PHP数组遍历的五种方法
for
对于纯数字索引的数组可以通过for循环来遍历数组,但是要注意的是数字索引必须是连续的,否则会获取不到数组中的部分数据。遍历不受数组内部指针影响。
<?php
$ar1=range('a','e');
$len=count($ar1);
for($i=0;$i<$len;$i++){echo $ar1[$i]."\n";
}
$ar1=array(0=>"a","2"=>"c","d");
$len=count($ar1);
for($i=0;$i<$len;$i++){echo $ar1[$i]."\n";
}
?>
foreach
foreach可以遍历任何类型的数组,可以只遍历值,也可以同时遍历键和值。遍历不受数组内部指针影响。
<?php
$ar1=range('a','e');
$ar2=array_combine($ar1,range(1,5));
$ar1=array(0=>"a","2"=>"c","d");
foreach($ar1 as $k=>$v){echo "$k=>$v\n";
}
foreach($ar2 as $k =>$v){echo "$k=>$v\n";
}
foreach ($ar2 as $v) {echo "$v\n";
}
?>
while/do...while、each
each函数以数组形式返回数组中当前的键/值对并将数组指针向前移动一步,each函数在PHP7.2后被移除。如果想要再次从头遍历需要重置数组内部指针。
<?php
$ar1=range('a','e');
$ar2=array_combine($ar1,range(1,5));
while($kv=each($ar2)){echo $kv[0]."=>".$kv[1].",".$kv['key']."=>".$kv['value']."\n";
}
?>
while/do...while、list、each
通过list函数接受each返回的数组键/值对。如果想要再次从头遍历需要重置数组内部指针。
<?php
$ar1=range('a','e');
$ar2=array_combine($ar1,range(1,5));
while(list($k,$v)=each($ar2)){echo "$k=>$v\n";
}
?>
while/do..while、key、next/prev、current
通过数组的next、prev等可操作数组内部指针的函数进行遍历。
<?php
$ar3=array("a"=>"a",1=>"b",false=>"c",3=>false,"d",null=>false,"f");
while(key($ar3)!==null){echo key($ar3)."=>".current($ar3)."\n";next($ar3);
}
?>
PHP数组遍历的五种方法相关推荐
- JavaScript 数组遍历的五种方法(转)
转自:JavaScript 数组遍历的五种方法 这篇文章主要介绍了JavaScript 数组遍历的五种方法,帮助大家更好的理解和学习使用JavaScript,感兴趣的朋友可以了解下 在使用 JavaS ...
- List集合遍历的五种方法
List集合遍历的五种方法: public static void main(String[] args) {List<Integer> list = Lists.newArrayList ...
- JavaScript数组去重的五种方法
JavaScript数组去重的五种方法 先简单准备一个数组,用于方法的实验: let array = [1,1,2,3,4,4,1,5,6,6,7,7,7]; console.log(`去重前的数组: ...
- Java遍历Map五种方法
一.Map集合遍历日常开发最常使用,简单总结五种方法差异. ①.Iterator+entrySet写法[推荐JDK8以下],Map.Entry是Map接口的内部接口,获取迭代器,然后依次取出每个迭代器 ...
- 数组遍历的几种方法及用法
一.for循环 for(let i = 0;i<arr.length;i++){console.log(arr[i])} 二.forEach方法 forEach是最简单.最常用的数组遍历方法,它 ...
- HashMap遍历的五种方法
在本文中,我们将通过示例讨论在 Java 上遍历 HashMap 的五种最佳方法. 1.使用 Iterator 遍历 HashMap EntrySet 2.使用 Iterator 遍历 HashMap ...
- map集合遍历的五种方法
package com.jackey.topic; import java.util.ArrayList; import java.util.HashMap; import java.util.Ite ...
- chararray遍历_数组遍历的三种方法
#import //数组遍历(枚举)对集合中的元素依此不重复的进行遍历 int main(int argc, const char * argv[]) { @autoreleasepool { NSA ...
- Map循环遍历的五种方法
因为Map比较常用,所以今天来总结下Map取值比较常用的几种遍历方法. 1.创建一个Enum public enum FactoryStatus {BAD(0,"ou"),GOOD ...
最新文章
- java模拟国际象棋游戏_java国际象棋小游戏
- RibbonControl中的主题设计
- php 数值相加_php递归遍历多维数组,合并值并相加
- 源码安装mysql 5.1_Linux环境下源码编译安装MySQL5.1
- Spring Cloud 微服务实战系列-Spring Boot再次入门(一)
- 【Linux】文件描述符与重定向
- C# 随机数 Radom 循环生成同一的数字
- Kafka+Spark Streaming+Redis实时系统实践
- python爬虫初学(3)
- 进销存excel_进销存管理系统excel模板
- Scratch少儿编程
- DEFCON携手百度安全落地中国,打造国际化网络安全交流平台
- 2022泰迪杯a题害虫检测
- 星级评价,点击星星进行评分
- 计算机开机没有找到引导设备,电脑开机显示没有可以引导的设备
- MATLAB连接USRP实现数据采集
- firefox 绿色护眼
- 【智能物流】快递、云仓、新零售引领物流自动化千亿市场
- 社区疫情防控平台需求工程--软件需求规格说明
- 基于pytorch搭建多特征CNN-LSTM时间序列预测代码详细解读(附完整代码)
热门文章
- compiling for macOS 10.11, but module xxx has a minimum deployment target of macOS 10.12
- 过椭圆外一点引两条切线方程_椭圆外一点引椭圆的两条切线互相垂直问题巧解 -...
- SpringBoot的Spring Data JPA配置
- 若依表单中上传文件/图片
- vue 一维 数组 转换成三维 数组
- layui的form表单提交问题
- Hdfs NameNode中数据块、数据节点及副本状态概述
- 数据库设计方法论 - 继承
- solidity的delete操作汇总
- 复合材料在计算机的应用,计算机在复合材料中的应用