php不用for也可用foreach語句來遍歷處理陣列。 foreach是專為遍歷數組而設計的語句,是遍歷數組時常用的方法,在遍歷數組方面提供了很大的便利。 foreach語句遍歷數組與數組下標無關,且可以用於不連續的索引數組和以字串為下標的關聯數組。
本教學操作環境:windows7系統、PHP8版、DELL G3電腦
php不用for也可用foreach語句來遍歷處理數組。
foreach是專門為遍歷數組而設計的語句,是遍歷數組時常用的方法,在遍歷數組方面提供了很大的便利;PHP5後還可以遍歷對象(foreach僅能夠應用於數組和對象)。
foreach語句遍歷數組與數組下標無關,且可以用於不連續的索引數組和以字串為下標的關聯數組。
foreach語句有兩種語法格式:
語法格式1:
foreach ($array as $value){ 语句块; }
遍歷給定的 # $array
數組,在每次循環中將目前數組的值賦給$value
。
語法格式2:
foreach ($array as $key => $value){ 语句块; }
遍歷給定的 $array
數組,每次循環中都會將目前數組的值賦給$value
,鍵名賦給$key
。
說明:
foreach語句在每次迴圈時,陣列內部的指標會向前移一步,這樣在下一次迴圈中會得到下一個陣列元素,直到遍歷到數組的末尾,停止遍歷並退出循環。
foreach語句遍歷與修改陣列
#範例1:
<?php header("Content-type:text/html;charset=utf-8"); $array= array("香蕉","苹果","梨子","橙子","橘子","榴莲"); foreach ($array as $value) { echo $value . "<br/>"; } ?>
實例2:
一般情況下,使用foreach語句遍歷數組時,是對數組的備份進行操作,一般不會影響數組本身。
可以採用引用迴圈(在 $value 之前加上 &,這樣foreach語句會以引用賦值而非拷貝一個值),那麼在迴圈體內對陣列進行操作,就會影響陣列本身。
<?php $array= array(1,2,3,4,5,); foreach ($array as &$value) { $value = $value*2; // 元素值乘以2 } var_dump($array) ?>
可以看出,在最後一個元素前,有一個&,那是因為陣列最後一個元素的 $value 引用在 foreach 迴圈之後仍會保留。我們需要使用unset() 來銷毀。
unset($value); // 最后取消掉引用
推薦學習:《PHP影片教學》
以上是php不用for怎麼遍歷處理數組的詳細內容。更多資訊請關注PHP中文網其他相關文章!