PHP二维索引数组的遍历实例分析【2种方式】


Posted in PHP onJune 24, 2019

本文实例讲述了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()对二维索引数组进行遍历,当然肯定还有其他办法,但以上两种最为常用、效率最高。

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
用PHP调用Oracle存储过程
Oct 09 PHP
定制404错误页面,并发信给管理员的程序
Oct 09 PHP
PHP命名空间(Namespace)简明教程
Jun 11 PHP
php中explode函数用法分析
Nov 15 PHP
PHP获取指定月份第一天和最后一天的方法
Jul 18 PHP
PHP获取二维数组中某一列的值集合
Dec 25 PHP
微信公众号模板消息群发php代码示例
Dec 29 PHP
thinkPHP框架可添加js事件的分页类customPage.class.php完整实例
Mar 16 PHP
PHP使用PHPExcel实现批量上传到数据库的方法
Jun 08 PHP
PHP面向对象五大原则之里氏替换原则(LSP)详解
Apr 08 PHP
PHP实现数据四舍五入的方法小结【4种方法】
Mar 27 PHP
php-7.3.6 编译安装过程
Feb 11 PHP
PHP中的self关键字详解
Jun 23 #PHP
php面向对象程序设计入门教程
Jun 22 #PHP
PHP字符串中抽取子串操作实例分析
Jun 22 #PHP
微信公众号之主动给用户发送消息功能
Jun 22 #PHP
Yii 使用intervention/image拓展实现图像处理功能
Jun 22 #PHP
PHP实现给定一列字符,生成指定长度的所有可能组合示例
Jun 22 #PHP
PHP中strtr与str_replace函数运行性能简单测试示例
Jun 22 #PHP
You might like
用PHP制作静态网站的模板框架(一)
2006/10/09 PHP
php获取目录所有文件并将结果保存到数组(实例)
2013/10/25 PHP
PHP使用redis实现统计缓存mysql压力的方法
2015/11/14 PHP
注意!PHP 7中不要做的10件事
2016/09/18 PHP
PHP实现Google plus的好友拖拽分组效果
2016/10/21 PHP
HTML TO JavaScript 转换
2006/06/26 Javascript
Javascript select控件操作大全(新增、修改、删除、选中、清空、判断存在等)
2008/12/19 Javascript
JavaScript通过this变量快速找出用户选中radio按钮的方法
2015/03/23 Javascript
JavaScript中数据结构与算法(三):链表
2015/06/19 Javascript
详解Javascript中的Object对象
2016/02/28 Javascript
JS模仿腾讯图片站的图片翻页按钮效果完整实例
2016/06/21 Javascript
JavaScript重定向URL参数的两种方法小结
2016/10/19 Javascript
RequireJS 依赖关系的实例(推荐)
2017/01/21 Javascript
浅谈Koa服务限流方法实践
2017/10/23 Javascript
vue判断input输入内容全是空格的方法
2018/03/02 Javascript
vue实现简单的MVVM框架
2018/08/05 Javascript
jQuery+CSS实现的标签页效果示例【测试可用】
2018/08/14 jQuery
JavaScript实现构造json数组的方法分析
2018/08/17 Javascript
浅谈Vue.js 中的 v-on 事件指令的使用
2018/11/25 Javascript
react中Suspense的使用详解
2019/09/01 Javascript
对layui中table组件工具栏的使用详解
2019/09/19 Javascript
Python中使用dom模块生成XML文件示例
2015/04/05 Python
Python中字符串的处理技巧分享
2016/09/17 Python
Python3利用SMTP协议发送E-mail电子邮件的方法
2017/09/30 Python
python如何读写csv数据
2018/03/21 Python
python实现猜单词小游戏
2020/05/22 Python
使用python批量修改文件名的方法(视频合并时)
2020/03/24 Python
python flask中动态URL规则详解
2019/11/22 Python
浅谈pycharm导入pandas包遇到的问题及解决
2020/06/01 Python
python如何发送带有附件、正文为HTML的邮件
2021/02/27 Python
艺术学院毕业生自我评价
2014/03/02 职场文书
四下基层实施方案
2014/03/28 职场文书
停水通知
2015/04/16 职场文书
幼儿园保育员随笔
2015/08/14 职场文书
幼儿园国培研修日志
2015/11/13 职场文书
python实现层次聚类的方法
2021/11/01 Python