二维数组在做项目时是经常需要使用的。
我们来看看二维索引数组如何遍历。
<?php
$arr = array(//定义外层数组
array(1,'高某','A公司','北京市','(010)987654321','gm@Linux.com'),//子数组1
array(2,'洛某','B公司','上海市','(021)123456789','lm@apache.com'),//子数组2
array(3,'峰某','C公司','天津市','(022)24680246','fm@mysql.com'), //子数组3
array(4,'书某','D公司','重庆市','(023)13579135','sm@php.com') //子数组4
);
for($row=0;$row<count($arr);$row++){
for($col=0;$col<count($arr[$row]);$col++){
echo $arr[$row][$col]."</br>";
}
}
?>
代码解释:
1、第一个for循环,对$arr数组进行子元素遍历,主要遍历$arr数组的行
2、第二个for循环,对$arr数组下面的子数组进行遍历,主要遍历$arr数组的列
3、实际上我们可以把二维数组理解为一张表格,有行、有列,这样有很好的理解循环了
实例二、
采用foreach循环进行对二维数组的遍历
<?php
foreach($arr as $key=>$arr_item){
echo $key."===="; //取出外层数组$arr的下标
echo "<pre>";
print_r($arr_item); //$arr_item就是子数组了
echo "</pre>";
foreach($arr_item as $col){
echo $col;
}
}
?>
代码解释:
1、foreach效率相对for循环高,因为foreach是PHP中数组及对象遍历的专用函数
2、$key,取出外层数组$arr的下标
3、$arr\_item就是子数组(子数组1,子数组2…..)
4、通过外层数组的下标,对相应子数组进行遍历,其实有点降维的意思。
总结:以上就是通过for循环及foreach()对二维索引数组进行遍历,当然肯定还有其他办法,但以上两种最为常用、效率最高。