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中用于检测一个地理IP地址是否可用的代码
Feb 19 PHP
PHP按行读取、处理较大CSV文件的代码实例
Apr 09 PHP
ThinkPHP、ZF2、Yaf、Laravel框架路由大比拼
Mar 25 PHP
php实现字符串翻转的方法
Mar 27 PHP
PHP的文件操作与算法实现的面试题示例
Aug 10 PHP
JavaScript实现删除电脑的关机键
Jul 26 PHP
yii框架搜索分页modle写法
Dec 19 PHP
Laravel中的Auth模块详解
Aug 17 PHP
PHP使用PDO访问oracle数据库的步骤详解
Sep 29 PHP
PHP实现支持CURL字符串证书传输的方法
Mar 23 PHP
PHP Cli 模式设置进程名称的方法
Jun 12 PHP
PHP实现通过二维数组键值获取一维键名操作示例
Oct 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程序员基本要求和必备技能
2014/05/09 PHP
浅谈Eclipse PDT调试PHP程序
2014/06/09 PHP
详谈配置phpstorm完美支持Codeigniter(CI)代码自动完成(代码提示)
2017/04/07 PHP
form自动提交实例讲解
2017/07/10 PHP
js面向对象 多种创建对象方法小结
2012/05/21 Javascript
JQuery onload、ready概念介绍及使用方法
2013/04/27 Javascript
深入理解JavaScript是如何实现继承的
2013/12/12 Javascript
深入理解JavaScript系列(50):Function模式(下篇)
2015/03/04 Javascript
详解JavaScript中setSeconds()方法的使用
2015/06/11 Javascript
ionic进入多级目录后隐藏底部导航栏(tabs)的完美解决方案
2016/11/23 Javascript
JS实现鼠标移上去显示图片或微信二维码
2016/12/14 Javascript
Bootstrap源码学习笔记之bootstrap进度条
2016/12/24 Javascript
Bootstrap缩略图与警告框学习使用
2017/02/08 Javascript
Javascript中类式继承和原型式继承的实现方法和区别之处
2017/04/25 Javascript
vue快捷键与基础指令详解
2017/06/01 Javascript
jQuery复合事件用法示例
2017/06/10 jQuery
Windows下使用Nodejs运行js的方法
2017/09/02 NodeJs
原生JS写Ajax的请求函数功能
2017/12/22 Javascript
Python 正则表达式实现计算器功能
2017/04/29 Python
基于python实现学生管理系统
2018/10/17 Python
python 判断参数为Nonetype类型或空的实例
2018/10/30 Python
用python3 urllib破解有道翻译反爬虫机制详解
2019/08/14 Python
Pytorch修改ResNet模型全连接层进行直接训练实例
2019/09/10 Python
python推导式的使用方法实例
2021/02/28 Python
CSS3绘制超炫的上下起伏波动进度加载动画
2016/04/21 HTML / CSS
百思买加拿大:Best Buy Canada
2018/03/20 全球购物
Kathmandu美国网站:新西兰户外运动品牌
2019/03/23 全球购物
广播电视新闻学专业应届生求职信
2013/10/08 职场文书
九年级化学教学反思
2014/01/28 职场文书
中学家长会邀请函
2014/02/03 职场文书
安全责任协议书
2014/04/21 职场文书
建筑工程专业大学生求职信
2014/04/23 职场文书
通信工程专业求职信
2014/06/04 职场文书
重阳节慰问信
2015/02/15 职场文书
遗嘱范文
2015/08/07 职场文书
HashMap实现保存两个key相同的数据
2021/06/30 Java/Android