PHP foreach 語法結構
foreach ( $array as $value )
... 執行程式碼 ...
foreach ( $array as $key => $value )
... 執行程式碼 ...
第一種寫法是每跑一圈 foreach 會把陣列($array)的陣列值(array value)存放到 $value 中,第二種寫法也是一樣的意思,但多增加了把陣列的所引(array key )也存放到 $key 中,以下兩個範例清楚表達兩種 foreach 寫法的差異。... 執行程式碼 ...
foreach ( $array as $key => $value )
... 執行程式碼 ...
PHP foreach 輸出範例
<?php
foreach (array(1, 2, 3, 4) as $value) {
echo 'value='.$value.'<br>';
}
echo '<br>';
foreach (array(1, 2, 3, 4) as $key => $value) {
echo 'key='.$key.' and value='.$value.'<br>';
}
?>
範例輸出結果foreach (array(1, 2, 3, 4) as $value) {
echo 'value='.$value.'<br>';
}
echo '<br>';
foreach (array(1, 2, 3, 4) as $key => $value) {
echo 'key='.$key.' and value='.$value.'<br>';
}
?>
value=1
value=2
value=3
value=4
key=0 and value=1
key=1 and value=2
key=2 and value=3
key=3 and value=4
範例第一個 foreach 單純的將每個陣列元素存放到 $value 之中,然後 echo 出來,第二個 foreach 則使用了 $key=>$value 的功能,同時將 array key 取出並存放於 $key 之中,可以看到輸出結果的 key 是從 0 開始,因為陣列的第一個元素 key 就是從 0 開始編排。value=2
value=3
value=4
key=0 and value=1
key=1 and value=2
key=2 and value=3
key=3 and value=4
延伸閱讀