PHP二维索引数组的遍历实例分析【2种方式】
这篇文章主要介绍了PHP二维索引数组的遍历,结合实例形式分析了php使用for循环与foreach循环2种方式遍历数组的相关操作技巧,需要的朋友可以参考下。
本文实例讲述了PHP二维索引数组的遍历,分享给大家供大家参考,具体如下:
二维索引数组的遍历方式,话不多说,直接看代码。
实例一、
- <?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
- 高某
- A公司
- 北京市
- (010)987654321
- gm@Linux.com
- 2
- 洛某
- B公司
- 上海市
- (021)123456789
- lm@apache.com
- 3
- 峰某
- C公司
- 天津市
- (022)24680246
- fm@mysql.com
- 4
- 书某
- D公司
- 重庆市
- (023)13579135
- sm@php.com
代码解释:
1、第一个for循环,对$arr数组进行子元素遍历,主要遍历$arr数组的行
2、第二个for循环,对$arr数组下面的子数组进行遍历,主要遍历$arr数组的列
3、实际上我们可以把二维数组理解为一张表格,有行、有列,这样有很好的理解循环了
实例二、
采用foreach循环进行对二维数组的遍历
- <?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
- );
- 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;
- }
- }
- ?>
运行结果:
- 0====
- Array
- (
- [0] => 1
- [1] => 高某
- [2] => A公司
- [3] => 北京市
- [4] => (010)987654321
- [5] => gm@Linux.com
- )
1高某A公司北京市(010)987654321gm@Linux.com1====
- Array
- (
- [0] => 2
- [1] => 洛某
- [2] => B公司
- [3] => 上海市
- [4] => (021)123456789
- [5] => lm@apache.com
- )
2洛某B公司上海市(021)123456789lm@apache.com2====
- Array
- (
- [0] => 3
- [1] => 峰某
- [2] => C公司
- [3] => 天津市
- [4] => (022)24680246
- [5] => fm@mysql.com
- )
3峰某C公司天津市(022)24680246fm@mysql.com3====
- Array
- (
- [0] => 4
- [1] => 书某
- [2] => D公司
- [3] => 重庆市
- [4] => (023)13579135
- [5] => sm@php.com
- )
4书某D公司重庆市(023)13579135sm@php.com
代码解释:
1、foreach效率相对for循环高,因为foreach是PHP中数组及对象遍历的专用函数
2、$key,取出外层数组$arr的下标
3、$arr_item就是子数组(子数组1,子数组2…..)
4、通过外层数组的下标,对相应子数组进行遍历,其实有点降维的意思。
总结:以上就是通过for循环及foreach()对二维索引数组进行遍历,当然肯定还有其他办法,但以上两种最为常用、效率最高。