程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> PHP基礎知識 >> foreach函數說明

foreach函數說明

編輯:PHP基礎知識
 

foreach在數組用得比較多。不過要注意幾點:
1、foreach遍歷數組的順序是由前至後,當 foreach 開始執行時,數組內部的指針會自動指向第一個單元。循環運行到結束,拷貝數組與原數組的內部指針都將指向數組的結尾。
實驗:
$switching = array( 'a'=>10,
                              'b'=>11,
                              'c'=>12
                            );
foreach($switching as $newswitch) {  }
print_r($newswitch);
輸出結果:12,遍歷結束,指針指到最後一單元12(foreach (array_expression as $value)遍歷形式並不拷貝鍵值)。
2、遍歷的兩種形式
分別是:
foreach (array_expression as $value)
    statement
foreach (array_expression as $key => $value)
    statement

第一種形式只傳遞值,第二種傳遞鍵和值。
實驗:
還是上例switching數組,下面表達式改為:
$test = array();
foreach($switching as $newswitch) { 
 $test[] = $newswitch;
}
print_r($test);
輸出:Array ( [0] => 10 [1] => 11 [2] => 12 ) ,可以看出新數組並沒有繼承原數組鍵值。因為這種表達式只說明把array_expression的值傳遞給$value。
實驗:
原數組還是switching,下部表達式改為:
$test = array();
foreach($switching as $k=>$v) { 
 $test[$k] = $v;
}
print_r($test);
輸出:Array ( [a] => 10  => 11 [c] => 12 ) 。用第二種表達式很好繼承原屬性。所以說第二種表達式是第一種的有益補充。

 
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved