循环在任何语言里都有,python、Java循环有for,那么php里有啥呢,下面小编告诉你,php里的循环,foreach的用法
foreach有两种语法:
第一种:遍历给定的 数组语句 array 数组。每次循环中,当前单元的值被赋给 $value 并且数组内部的指针向前移一步(因此下一次循环中将会得到下一个单元)。
foreach(arr as $value)
第二种:同上,同时当前单元的键名也会在每次循环中被赋给变量 $key。
foreach(arr as $key=>$value)
比如说数组:
$arr=array(1, 2, 3, 17)
第一种语法:
foreach($arr as $value){ echo $value."<br>"; }
输出结果
1
2
3
17
第二种语法:
foreach($arr as $key=>$value){ echo $key."=>".$value."<br>"; }
输出结果
0=>1
1=>2
2=>3
3=>17
再看如下代码
$b = array('a'=>'Tom','b'=>'Mary','c'=>'Peter','d'=>'Jack');
第一种语法:
foreach ($b as $value) { echo $value."<br/>"; }
输出结果
Tom
Mary
Peter
Jack
第二种语法:
foreach ($b as $key => $value) { echo $key.'=>'.$value."<br/>"; }
输出结果:
a=>Tom
b=>Mary
c=>Peter
d=>Jack
这样可以看出,如果没有设置关联,这默认的key就是元素下标。
以上是一维数组的用法,下面看看二维数组
$arr=array(array(1,'Tom'), array(2,'Mary'), array(3,'Peter'), array(17,'Jack'))
第一种语法:
foreach ($arr as $value) { print_r($value); echo "<br/>"; }
输出结果
Array ( [0] => 1 [1] => Tom )
Array ( [0] => 2 [1] => Mary )
Array ( [0] => 3 [1] => Peter )
Array ( [0] => 4 [1] => Jack )
Array ( [0] => 1 [1] => Tom )
Array ( [0] => 2 [1] => Mary )
Array ( [0] => 3 [1] => Peter )
Array ( [0] => 17 [1] => Jack )
第二种语法:
foreach ($arr as $key => $value) { echo '$key='.$key."<br/>"; print_r($value); echo "<br/>"; }
$key=0
Array ( [0] => 1 [1] => Tom )
$key=1
Array ( [0] => 2 [1] => Mary )
$key=2
Array ( [0] => 3 [1] => Peter )
$key=3
Array ( [0] => 17 [1] => Jack )
关联多维数组
$arr= array( array('id'=>1,'name'=>'Tom'), array('id'=>2,'name'=>'Mary'), array('id'=>3,'name'=>'Peter'), array('id'=>17,'name'=>'Jack') );
第一种用法:
foreach ($arr as $value) { print_r($value); echo "<br/>"; }
输出结果
$key=0
Array ( [0] => 1 [1] => Tom )
$key=1
Array ( [0] => 2 [1] => Mary )
$key=2
Array ( [0] => 3 [1] => Peter )
$key=3
Array ( [0] => 17 [1] => Jack )
第二种用法:
foreach ($arr as $key => $value) { echo $key.'=>'.$value."<br/>"; }
输出结果
0=>Array
1=>Array
2=>Array
3=>Array
评论