天天看點

each函數

函數生成一個由數組目前内部指針所指向的元素的鍵名和鍵值組成的數組,并把内部指針向前移動。

文法 : array each( array );

傳回值 : 數組

函數種類 : 資料處理

内容說明:

傳回數組為目前數組指針的 索引/值 對。傳回的數組有四個元素,依序為 0, 1, 索引, 及值。前述的 0 與 索引 為數組的索引(key),1 與 值則為數組元素的值(value)。

使用範例

範例一:

<?
$foo = array( "bob", "fred", "jussi", "jouni" );
$bar = each( $foo );
?>
           

上面的例子,傳回數組 $bar 的 索引/值 為

=> 
 => 'bob'
key => 
value => 'bob'
           

範例二:

<?
$foo = array( "Robert" => "Bob", "Seppo" => "Sepi" );
$bar = each( $foo );
?>
           

這個的例子,傳回數組 $bar 的 索引/值 為

=> 'Robert'
 => 'Bob'
key => 'Robert'
value => 'Bob'
           

範例三:

each() 函數最典型的例子是拿來與 list() 函數合用,如下例的 $HTTP_POST_VARS 變量。

<?
echo "POST 所送出的值為:<br>";
while ( list( $key, $val ) = each( $HTTP_POST_VARS ) ) {
  echo "$key => $val<br>";
}
?>
           

相關的方法:

  • current() - 傳回數組中的目前元素的值
  • end() - 将内部指針指向數組中的最後一個元素,并輸出
  • next() - 将内部指針指向數組中的下一個元素,并輸出
  • prev() - 将内部指針指向數組中的上一個元素,并輸出
  • reset() - 将内部指針指向數組中的第一個元素,并輸出
<?php
$people = array("Bill", "Steve", "Mark", "David");

echo current($people) . "<br>"; // 目前元素是 Bill
echo next($people) . "<br>"; // Bill 的下一個元素是 Steve
echo current($people) . "<br>"; // 現在目前元素是 Steve
echo prev($people) . "<br>"; // Steve 的上一個元素是 Bill
echo end($people) . "<br>"; // 最後一個元素是 David
echo prev($people) . "<br>"; // David 之前的元素是 Mark
echo current($people) . "<br>"; // 目前的目前元素是 Mark
echo reset($people) . "<br>"; // 把内部指針移動到數組的首個元素,即 Bill
echo next($people) . "<br>"; // Bill 的下一個元素是 Steve

print_r (each($people)); // 傳回目前元素的鍵名和鍵值(目前是 Steve),并向前移動内部指針
?>
           

運作結果:

Bill
Steve
Steve
Bill
David
Mark
Mark
Bill
Steve
Array ( [] => Steve [value] => Steve [] =>  [key] =>  )
           

轉載至PHP 完全中文手冊 和 w3school PHP函數