php中二维数组怎么遍历
时间 : 2023-02-23 00:48:02声明: : 文章内容来自网络,不保证准确性,请自行甄别信息有效性
php中的二维数组是数组的高级形式,有多层深度,如果想要处理这种二维数组,就要遍历它。如何遍历这种多维数组呢?我们可以使用两种不同的方法:第一用foreach循环,第二个是使用while循环。
首先,使用foreach循环遍历二维数组,它的核心就是用嵌套循环:先遍历整个外层数组,每次循环都遍历当前成员的内层数组。示例:
$arr = array(
array('name'=>'张三','age'=>18),
array('name'=>'李四','age'=>20)
);
foreach($arr as $v1){
echo '姓名:'.$v1['name'].',年龄:'.$v1['age'].'<br />';
}
其次,使用while循环遍历二维数组,用another方法对其进行可以更好地处理多级嵌套数组,以及更复杂的问题。while循环以数组做参数,进入一次while循环获得一个成员,根据当前成员,嵌套另一个while循环,示例:
$arr = array(
array('name'=>'张三','age'=>18),
array('name'=>'李四','age'=>20)
);
while (list ($key, $val) = each ($arr)) {
while (list ($key2, $val2) = each ($val)) {
echo $key2.'-'.$val2.' ';
}
echo '<br />';
}
总结:php中,有两种方法来遍历二维数组,分别是foreach循环和while循环,这两种方法可以帮助我们有效地处理多维数组。就遍历技术而言,首先应该根据自己的实际情况来选择不同的循环方法,并分析它们的效率优劣,然后再选择更合适的方法。
php中的二维数组,即通常所说的数组中嵌套的另一个数组,根据情况的不同,有不同的遍历方法,下面我就来介绍几种常用的遍历方法。
首先,最常用的方法就是使用for循环遍历二维数组,这种方法可以比较容易地实现任意深度和不同维度的数组遍历,代码如下:
$arr = array(
array('name'=>'Tom','age'=>'16'),
array('name'=>'John','age'=>'18')
)
for($j=0;$j<count($arr);$j++){
$item=$arr[$j];
list($name,$age)=$item;
echo $name.'的年龄是'.$age;
}
其次,在二维数组不太复杂的情况下,可以利用for-each循环,并根据需要选择性地对每一个嵌套元素进行遍历来提取值,代码示例如下:
$arr = array(
array('name'=>'Tom','age'=>'16'),
array('name'=>'John','age'=>'18')
)
foreach ($arr as $val) {
echo $val['name'].'的年龄是'.$val['age'].'<br />';
}
最后,php提供了一种特殊的二维数组遍历方法,即使用array_walk()函数。它可以将数组当成参数,从而在第一级的循环中对每个值执行给定的函数。通常来说,它比for-each遍历的用法要容易,代码示例如下:
$arr = array(
array('name'=>'Tom','age'=>'16'),
array('name'=>'John','age'=>'18')
)
function myfunction($item,$key)
{
echo $item['name'].'的年龄是'.$item['age'].'<br />';
}
array_walk($arr, 'myfunction');
以上就是php中二维数组遍历的几种常用方法,具体方法的使用应根据实际情况灵活选择。
上一篇
PHP自然排序是怎么样的
下一篇
php中怎么验证验证码
https/SSL证书广告优选IDC>>
推荐主题模板更多>>
推荐文章