PHP foreach循环。
本文向大家介绍PHP foreach循环。,包括了PHP foreach循环。的使用技巧和注意事项,需要的朋友参考一下
介绍
该的foreach语句是由PHP提供的循环结构之一。其他循环语句-while,do while和for-用于形成条件循环或计数循环。另一方面,foreach循环对于遍历数组结构非常方便。foreach语句的用法如下-
语法
foreach (array_expression as $value) statement foreach (array_expression as $key => $value) statement
foreach的第一种形式遍历索引数组中的元素。在每次迭代中,将$value变量设置为数组中的当前元素。PHP通过前进到下一个元素来跟踪内部指针,直到到达数组末尾为止。每个元素的值由foreach语句后的循环体处理
第二种形式适用于遍历关联数组。每次迭代都会在$key和$value变量中解压缩当前元素。处理完循环主体后,将数组指针前进到下一个键值对,直到数组用尽。
下面的示例借助foreach循环遍历索引数组
示例
<?php $arr = array(2,4,6,8,10); foreach ($arr as $i){ echo $i . "*2=" . $i*2 . "\n"; } ?>
输出结果
这将产生以下结果-
2*2=4 4*2=8 6*2=12 8*2=16 10*2=20
以下示例显示了使用foreach循环遍历关联数组
示例
<?php $arr = array("Phy"=>50, "Che"=>60, "Maths"=>70, "Bio"=>80); foreach ($arr as $sub=>$marks){ echo "marks in $sub: " . $marks . "\n"; } ?>
输出结果
这将产生以下结果-
marks in Phy: 50 marks in Che: 60 marks in Maths: 70 marks in Bio: 80
使用嵌套的foreach循环遍历二维数组
示例
<?php $arr1=[1,2,3,4,5]; $arr2=[6,7,8,9,10]; $twodim=[$arr1,$arr2]; foreach ($twodim as $row){ foreach ($row as $col){ echo $col . " "; } echo "\n"; } ?>
输出结果
这将产生以下结果-
1 2 3 4 5 6 7 8 9 10
示例
在下面的示例中,将遍历二维数组的关联数组
示例
<?php $arr1=["rno"=>1, "name"=>"Kiran", "marks"=>50]; $arr2=["rno"=>2, "name"=>"anil", "marks"=>60]; $arr3=["rno"=>3, "name"=>"Bina", "marks"=>70]; $twodim=[$arr1,$arr2, $arr3]; foreach ($twodim as $row){ foreach ($row as $k=>$v){ echo $k . ":" . $v . " "; } echo "\n"; } ?>
输出结果
这将产生以下结果-
rno:1 name:Kiran marks:50 rno:2 name:anil marks:60 rno:3 name:Bina marks:70