原创文章引自(https://www.ympfb.com/show-29-121-1.html)
php手册 php数组的遍历有哪几种方式?php数组如何遍历?
看手册的时候手册上面的函数会有一定的格式:这些格式通常表示为:
伪类型:
mixed,说明一个参数可以接受多种不同的类型。 number,说明一个参数可以是整型或浮点型。 callback,说明参数是一个回调函数。 void,如果作为返回类型,意味着函数的返回值是没有用的。作为参数列表中的内容意味着不接受任何参数
数组遍历
遍历, 是指对数组中每一个元素,挨个去处理.
方式一 foreach
1
<?php
2
3
$arr = ['a', 'b', 'c', 'd'];
4
5
foreach( $arr as $k => $v ){
6
....
7
}
8
9
/*
10
$arr 是要遍历的数组
11
把数组中每一个元素拿出来 下标 赋值给$k
12
元素值 赋值给$v
13
14
换句话讲, $k 和 $v 相当于形参
15
*/
16
17
?>
方式二 for
1
<?php
2
3
$arr = ['a', 'b', 'c', 'd'];
4
$n = count( $arr );
5
6
for($i = 0; $i < $n; $i++){
7
echo $arr[ $i ];
8
}
9
10
/*
11
数组的下标, 必须是连续的索引数组
12
*/
13
14
?>
方式三 指针
reset( ) 把数组内部指针指向第一个单元
next( ) 将数组中的内部指针向前移动一位
prev( ) 将数组中的内部指针倒回一位
end( ) 将数组的内部指针指向最后一个单元
current( ) 返回指针当前位置的 值
key( ) 返回指针当前位置的 下标
1
<?php
2
3
$arr = ['a', 'b', 'c', 'd'];
4
5
reset($arr);
6
7
while($v = current( $arr )){
8
....
9
next($arr);
10
}
11
12
?>
方式四 list…each
1
<?php
2
3
$arr = ['a', 'b', 'c', 'd'];
4
5
while( list($k, $v) = each($arr) ){
6
7
echo $k.'----'.$v;
8
9
}
10
11
/*
12
each(数组) 每一次取出一个元素, 返回一个数组
13
list($k, $v)
14
把下标为0的内容赋值给$k
15
把下标为1的内容赋值给$v
16
*/
17
18
?>