当前位置: 首页 > 面试题库 >

获取foreach循环中的下一个元素

林运浩
2023-03-14
问题内容

我有一个foreach循环,我想看看循环中是否存在下一个元素,以便可以将当前元素与下一个元素进行比较。我怎样才能做到这一点?我已经阅读了有关当前和下一个功能的信息,但我不知道如何使用它们。

提前致谢


问题答案:

一种独特的方法是反转阵列 然后 循环。这同样适用于非数字索引数组:

$items = array(
    'one'   => 'two',
    'two'   => 'two',
    'three' => 'three'
);
$backwards = array_reverse($items);
$last_item = NULL;

foreach ($backwards as $current_item) {
    if ($last_item === $current_item) {
        // they match
    }
    $last_item = $current_item;
}

如果您仍然对使用currentnext功能感兴趣,可以这样做:

$items = array('two', 'two', 'three');
$length = count($items);
for($i = 0; $i < $length - 1; ++$i) {
    if (current($items) === next($items)) {
        // they match
    }
}

#2可能是最好的解决方案。注意,$i < $length - 1;比较数组中的最后两项后,将停止循环。我将其放在循环中,以使示例更加明确。你可能应该算一下$length = count($items) - 1;



 类似资料:
  • 我在forEach循环中有一个select元素列表,并且只想要位于索引0的第一个元素。 这个元素将有一个不同的方法,我试图防止重复的代码,我不想只为这个元素创建另一个方法,我试图解决它,但似乎我不成功。

  • 如何进入JavaScript循环的下一次迭代? 例如: MDN文档只提到完全脱离循环,而不是转移到下一个迭代。

  • 问题内容: 我有一个简单的ajax(jQuery版本)脚本和一个非常短的php函数,它们工作正常而没有问题。当我从表单输入are中提交值时,ajax会发送并从php脚本中获取结果,在这种情况下,该ajax可以获取预定的总金额。Ajax脚本和html部分如下: 以下用作xml的php脚本也可以与上述ajax请求一起正常工作: 但是,当我将上述脚本与购物车的foreach循环结合使用时,它不起作用,并

  • 问题内容: 我想使用两个数组生成一个,一个包含国家/地区代码,另一个包含国家/地区名称。 这是一个例子: 这种方法对我不起作用。有什么建议么? 问题答案: 那是无效的。 您可能想要这样的东西… 另外,使代码成为数组的键会容易得多…

  • 问题内容: print_r($ samplearr)为包含3个项目的数组打印以下内容: 我想将它们放到HTML表中,所以我正在做一个foreach,但是没有达到我的期望: 正在返回: 这将是我想要的第一个输出: 要获得4722,我需要使用什么功能代替key($ item)? 问题答案: 尝试这个:

  • 大家好,我正在尝试在while循环中创建foreach循环。在foreach循环中,我试图生成包含div的列表元素,但我有非常奇怪的输出 这是我的密码 这是我的调试器consonle中的一个图像 正如你在图片中看到的,在ul标签中只存在一个li,其余的都在ul /ul. 我的第一个想法是,将div标记放在li标记中是无效的,但如果在文件的顶部使用它,则不是这样 DOCTYPE html PUBLI