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 选项及相关信息函数库
Dec 04 PHP
关于时间计算的结总
Dec 06 PHP
一篇不错的PHP基础学习笔记
Mar 18 PHP
完美实现GIF动画缩略图的php代码
Jan 02 PHP
Php中用PDO查询Mysql来避免SQL注入风险的方法
Apr 25 PHP
基于Linux调试工具strace与gdb的常用命令总结
Jun 03 PHP
100多行PHP代码实现socks5代理服务器[2]
May 05 PHP
thinkphp中的url跳转用法分析
Jul 12 PHP
php图形jpgraph操作实例分析
Feb 22 PHP
PHP 实现公历日期与农历日期的互转换
Sep 13 PHP
PHP连接SQL Server的方法分析【基于thinkPHP5.1框架】
May 06 PHP
PHP执行系统命令函数实例讲解
Mar 03 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+iFrame实现页面无需刷新的异步文件上传
2014/09/16 PHP
调试PHP程序的多种方法介绍
2014/11/06 PHP
深入浅析Yii admin的权限控制
2016/08/31 PHP
PHP实现二维数组去重功能示例
2017/01/12 PHP
浅谈PHP的反射API
2017/02/26 PHP
Thinkphp5.0 框架视图view的比较标签用法分析
2019/10/12 PHP
php实现快速对二维数组某一列进行组装的方法小结
2019/12/04 PHP
你真的了解JavaScript吗?
2007/02/24 Javascript
js模拟hashtable的简单实例
2014/03/06 Javascript
js对字符的验证方法汇总
2015/02/04 Javascript
JavaScript 异常处理 详解
2015/02/06 Javascript
JavaScript 匿名函数和闭包介绍
2015/04/13 Javascript
JS原型对象的创建方法详解
2016/06/16 Javascript
HTML5+Canvas调用手机拍照功能实现图片上传(下)
2017/04/21 Javascript
jquery.guide.js新版上线操作向导镂空提示jQuery插件(推荐)
2017/05/20 jQuery
JS中把函数作为另一函数的参数传递方法(总结)
2017/06/28 Javascript
JavaScript实现的贝塞尔曲线算法简单示例
2018/01/30 Javascript
详解Vue SPA项目优化小记
2018/07/03 Javascript
iview在vue-cli3如何按需加载的方法
2018/10/31 Javascript
使用 node.js 模仿 Apache 小部分功能
2019/07/07 Javascript
简单了解vue中父子组件如何相互传递值(基础向)
2019/07/12 Javascript
[01:20]辉夜杯背景故事宣传片《辉夜传说》
2015/12/25 DOTA
[25:59]Newbee vs TNC 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
[52:37]完美世界DOTA2联赛循环赛 Forest vs DM BO2第一场 10.29
2020/10/29 DOTA
浅谈Python 字符串格式化输出(format/printf)
2016/07/21 Python
python中通过预先编译正则表达式提高效率
2017/09/25 Python
解决Python requests库编码 socks5代理的问题
2018/05/07 Python
python实现扫描ip地址的小程序
2019/04/16 Python
python实现同一局域网下传输图片
2020/03/20 Python
利用Canvas模仿百度贴吧客户端loading小球的方法示例
2017/08/13 HTML / CSS
教师求职信范文分享
2013/12/27 职场文书
信息技术教学反思
2014/02/12 职场文书
加班费申请报告
2015/05/15 职场文书
校运会新闻稿
2015/07/17 职场文书
西部计划志愿者工作总结
2015/08/11 职场文书
2016婚礼主持词开场白
2015/11/24 职场文书