迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 编程语言 > PHP >

如何确定 PHP foreach 循环中的第一次和最后一次迭代

作者:迹忆客 最近更新:2023/03/14 浏览次数:

PHP foreach() 循环用于遍历数组中的每个元素。在本文中,我们将来学习如何使用 foreach() 循环以及如何获取数组的第一项和最后一项元素。

PHP foreach() 语法

foreach() 循环主要用于遍历数组的每个值。

foreach() 循环示例:

for($array as $key => $value){
    // Add code here
}

foreach() 参数含义:

  • $array - 它必须是在循环中使用的有效数组;如果传递的数组无效或字符串无效,则返回如下错误:(Warning: Invalid argument supplied for foreach())。
  • $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

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

如何从 Pandas 的日期时间列中提取月份和年份

发布时间:2024/04/23 浏览次数:160 分类:Python

我们可以分别使用 dt.year()和 dt.month()方法从 Datetime 列中提取出年和蛾。我们还可以使用 pandas.DatetimeIndex.month 以及 pandas.DatetimeIndex.year 和 strftime()方法提取年份和月份。

如何获取 Pandas DataFrame 的行数

发布时间:2024/04/23 浏览次数:71 分类:Python

本教程介绍如何通过使用 shape,len()来获取 Pandas DataFrame 的行数,以及有多少行元素满足条件。

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便