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 13 PHP
基于HTTP长连接的&quot;服务器推&quot;技术的php 简易聊天室
Oct 31 PHP
PHP编码规范之注释和文件结构说明
Jul 09 PHP
PHP操作XML作为数据库的类
Dec 19 PHP
优化PHP程序的方法小结
Feb 23 PHP
用mysql_fetch_array()获取当前行数据的方法详解
Jun 05 PHP
$_GET['goods_id']+0 的使用详解
Jun 06 PHP
PHP中的Streams详细介绍
Nov 12 PHP
ThinkPHP中url隐藏入口文件后接收alipay传值的方法
Dec 09 PHP
php隐藏实际地址的文件下载方法
Apr 18 PHP
CodeIgniter与PHP5.6的兼容问题
Jul 16 PHP
php正则修正符用法实例详解
Dec 29 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
sqlyog 中文乱码问题的设置方法
2008/10/19 PHP
css3实现背景模糊的三种方式
2021/03/09 HTML / CSS
event.srcElement 用法笔记e.target
2009/12/18 Javascript
EASYUI TREEGRID异步加载数据实现方法
2012/08/22 Javascript
javascripit实现密码强度检测代码分享
2013/12/12 Javascript
解决window.opener=null;window.close(),只支持IE6不支持IE7,IE8的问题
2014/01/14 Javascript
表单序列化与jq中的serialize使用示例
2014/02/21 Javascript
JavaScript中的类(Class)详细介绍
2014/12/30 Javascript
jQuery源码分析之Callbacks详解
2015/03/13 Javascript
jquery右下角自动弹出可关闭的广告层
2015/05/08 Javascript
JavaScript实现级联菜单的方法
2015/06/29 Javascript
javascript引用类型之时间Date和数组Array
2015/08/27 Javascript
JS简单随机数生成方法
2016/09/05 Javascript
值得分享的JavaScript实现图片轮播组件
2016/11/21 Javascript
jQuery实现鼠标滑过图片移动特效
2016/12/08 Javascript
JS中使用new Date(str)创建时间对象不兼容firefox和ie的解决方法(两种)
2016/12/14 Javascript
web打印小结
2017/01/11 Javascript
微信小程序实现列表下拉刷新上拉加载
2020/07/29 Javascript
浅谈React中的元素、组件、实例和节点
2018/02/27 Javascript
vue-cli安装使用流程步骤详解
2018/11/08 Javascript
vue项目设置scrollTop不起作用(总结)
2018/12/21 Javascript
jQuery实现input输入框获取焦点与失去焦点时提示的消失与显示功能示例
2019/05/27 jQuery
[01:00:53]2018DOTA2亚洲邀请赛3月29日 小组赛B组 iG VS Secret
2018/03/30 DOTA
在Python中使用正则表达式的方法
2015/08/13 Python
你真的了解Python的random模块吗?
2017/12/12 Python
python ansible服务及剧本编写
2017/12/29 Python
Django logging配置及使用详解
2019/07/23 Python
浅谈numpy中np.array()与np.asarray的区别以及.tolist
2020/06/03 Python
python爬虫使用requests发送post请求示例详解
2020/08/05 Python
小女主人连衣裙:Little Mistress
2017/07/10 全球购物
荷兰度假屋租赁网站:Aan Zee
2020/02/28 全球购物
生物制药专业自我鉴定
2014/02/19 职场文书
北京申奥口号
2014/06/19 职场文书
高中毕业典礼演讲稿
2014/09/09 职场文书
2015年民兵整组工作总结
2015/07/24 职场文书
学前班教学反思
2016/02/24 职场文书