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 相关文章推荐
Discuz板块横排显示图片的实现方法
May 28 PHP
Linux下将excel数据导入到mssql数据库中的方法
Feb 08 PHP
采用memcache在web集群中实现session的同步会话
Jul 05 PHP
Codeigniter框架实现获取分页数据和总条数的方法
Dec 05 PHP
PHP中基本HTTP认证技巧分析
Mar 16 PHP
PHP实现批量生成App各种尺寸Logo
Mar 19 PHP
php中文繁体和简体相互转换的方法
Mar 21 PHP
php中使用gd库实现远程图片下载实例
May 12 PHP
PHP mysql事务问题实例分析
Jan 18 PHP
简单介绍PHP非阻塞模式
Mar 03 PHP
Yii视图操作之自定义分页实现方法
Jul 14 PHP
PHP+mysql+ajax轻量级聊天室实现方法详解
Oct 17 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学习资料汇总与网址
2007/03/16 PHP
PHP利用二叉堆实现TopK-算法的方法详解
2017/04/24 PHP
JS 操作符整理[推荐收藏]
2011/11/15 Javascript
纯Javascript实现Windows 8 Metro风格实现
2013/10/15 Javascript
JS动态添加Table的TR,TD实现方法
2015/01/28 Javascript
js实现感应鼠标图片透明度变化的方法
2015/02/20 Javascript
javascript中createElement的两种创建方式
2015/05/14 Javascript
JS实现三级折叠菜单特效,其它级可自动收缩
2015/08/06 Javascript
在JavaScript中模拟类(class)及类的继承关系
2016/05/20 Javascript
Javascript循环删除数组中元素的几种方法示例
2017/05/18 Javascript
关于Promise 异步编程的实例讲解
2017/09/01 Javascript
JavaScript引用类型Array实例分析
2018/07/24 Javascript
JavaScript寄生组合式继承原理与用法分析
2019/01/11 Javascript
你所不知道的Python奇技淫巧13招【实用】
2016/12/14 Python
详解Numpy数组转置的三种方法T、transpose、swapaxes
2019/05/27 Python
python写入文件自动换行问题的方法
2019/07/05 Python
浅谈pytorch中torch.max和F.softmax函数的维度解释
2020/06/28 Python
python读取xml文件方法解析
2020/08/04 Python
canvas学习笔记之2d画布基础的实现
2019/02/21 HTML / CSS
厂长助理岗位职责
2013/12/27 职场文书
外企财务年会演讲稿
2014/01/03 职场文书
大学生怎样写好自荐信
2014/02/25 职场文书
师范生自我鉴定
2014/03/20 职场文书
2014年医学生毕业自我鉴定
2014/03/26 职场文书
市场营销策划方案
2014/06/11 职场文书
我的中国梦演讲稿500字
2014/08/19 职场文书
行风评议整改报告
2014/11/06 职场文书
党支部承诺书
2015/01/20 职场文书
委托书格式要求
2015/01/28 职场文书
护理专业自我评价
2015/03/11 职场文书
招商银行工作证明
2015/06/17 职场文书
六一儿童节致辞
2015/07/31 职场文书
八年级物理教学反思
2016/02/19 职场文书
JavaScript流程控制(循环)
2021/12/06 Javascript
vue如何实现关闭对话框后刷新列表
2022/04/08 Vue.js
MySQL分区以及建索引的方法总结
2022/04/13 MySQL