PHP foreach 循环。

phpserver side programmingprogramming更新于 2025/7/18 17:37:17

简介

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 . "
"; } ?>

输出

这将产生以下结果 −

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 . "
"; } ?>

输出

这将产生以下结果 −

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 "
"; } ?>

输出

这将产生以下结果 −

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 "
"; } ?>

输出

这将产生以下结果 −

rno:1 name:Kiran marks:50
rno:2 name:anil marks:60
rno:3 name:Bina marks:70

相关文章