
foreach简介
1. 数组循环
对于索引数组,索引为常规0-> Nforeach,直接使用for循环
结果:
如果该数组不是常规索引数组,则使用for循环会出现错误
结果: 通知错误,根本没有$ arr [0]

这需要使用foreach遍历数组
2,foreach语法
foreach语法结构提供了遍历数组的简便方法
foreach只能应用于数组和对象. 如果您尝试将其应用于其他数据类型的变量或未初始化的变量,则会发出错误消息
有两种语法:
红色框中的关键字无法更改
第一种格式遍历给定的array_expression数组. 在每个循环中,将当前单位的值分配给$ value,并将数组内部的指针向前移动一级,因此下一个单位将在下一循环中获取下一个单位
第二种格式的作用相同,并且在每个循环中,当前单位的键名也分配给变量$ key
您还可以自定义遍历对象
as是一个关键字,不少于. 如果您使用第二种语法格式,=>也是关键字
这里的键和值只是一个名称,您也可以使用其他
不能将数组和对象用作键foreach,这会导致错误
foreach不是函数,而是一种语言结构
3. 使用foreach分别遍历索引数组和关联数组
结果:
还遍历下标
结果:
遍历关联数组
结果:
此foreach具有更广泛的应用范围,它涉及各种数组. 这并不意味着它可以针对多种数据类型,仅适用于数组和对象
4. foreach的遍历顺序
如果它是索引数组,则将发现遍历的顺序不是通过索引大小遍历的,而是通过加法顺序遍历的. 如果按索引大小遍历,则应使用for而不是foreach
因此,foreach遍历数组的顺序取决于添加元素的顺序,无论是索引数组还是关联数组
结果:
5. 当foreach开始执行时,数组内的指针将自动指向第一个单元. 这意味着不需要在foreach循环之前调用reset()
如何理解?
结果:
第一个foreach将指针移到末尾,并尝试向后移动指针,直到指针移出界限(当前($ arr)返回false),foreach结束
在foreach结束后,我们没有帮助我们初始化指针,否则current应该返回数组的第一个单元,第二个foreach不受第一个foreach的影响,当foreach开始执行时,指针位于数组将自动指向第一个单元
本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/jisuanjixue/article-203603-1.html
全在否定有蛆
来抱中国大腿就对了