如何确定 PHP foreach 循环中的第一次和最后一次迭代
Ralfh Bryan Perez
2023年1月30日
PHP foreach()
循环用于遍历数组中的每个元素。在本文中,我们将来学习如何使用 foreach()
循环以及如何获取数组的第一项和最后一项元素。
PHP foreach()
语法
foreach()
循环主要用于遍历数组的每个值。
foreach()
循环示例:
for($array as $key => $value){
// Add code here
}
foreach()
参数含义:
$array
- 它必须是在循环中使用的有效数组;如果传递的数组无效或字符串无效,则返回如下错误:(Warning: Invalid argument supplied forforeach()
)。$key
- 它是每次迭代中的元素的键值。$value
- 它是每次迭代中的元素的值。
在 PHP 的 foreach()
循环中获取第一个和最后一个元素
有几种方法可以在 PHP 在循环中获取第一个和最后一个元素,并且在不同版本上方法也是不同的。
这些方法包括,通过使用计数器(适用于所有版本),适用于 PHP 7.3 的 array_key_first()
和 array_key_last()
。
在 PHP foreach
循环中使用计数器
添加一个整数变量并将计数器放在 foreach()
循环的底部。
例:
$array = array("dog", "rabbit", "horse", "rat", "cat");
$x = 1;
$length = count($array);
foreach($array as $animal){
if($x === 1){
//first item
echo $animal; // output: dog
}else if($x === $length){
echo $animal; // output: cat
}
$x++;
}
在上面的示例中,动物列表是作为用数组
来存储的。
然后将 $x
设置为 1 来以启动计数器。
使用 count()
来确定数组的总长度。计数器的迭代位于 foreach()
循环的底部 - $x++;
,所以 $x == 1
是获取第一项元素的条件,因为计数器还没有开始累加。
要获取最后一项元素,我们来检查 $x
是否等于数组的总长度。如果为 true
,则它将得到最后一项元素。
在 PHP 循环中使用 array_key_first()
和 array_key_last()
使用最新版本的 PHP,获取数组中的第一个和最后一个元素变得更加高效。
例如:
$array = array("dog", "rabbit", "horse", "rat", "cat");
foreach($array as $index => $animal) {
if ($index === array_key_first($array))
echo $animal; // output: dog
if ($index === array_key_last($array))
echo $animal; // output: cat
}
在上面的示例中,array_key_first()
获取数组中第一个元素的键值,在本例中为 0
。
然后,array_key_last()
获得数组的最后一个键值,在此处的例子中为 5
。
通过检查数组,我们可以得到第一个元素的键值为 0
,它的值为 dog
,而最后一个元素的键值/索引为 5
,它的值为 cat
。
相关文章 - PHP Loop
- 循环遍历 PHP 中的关联数组
- 跳出 PHP 中的 Foreach 循环
- PHP 中 for 循环和 foreach 循环的性能和可读性
- 在 PHP 中的多维数组中使用 Foreach 循环
- 在 PHP 中检查 foreach 循环键值