一种独特的方法是反转阵列 然后 循环。这同样适用于非数字索引数组:
$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;}如果您仍然对使用
current和
next功能感兴趣,可以这样做:
$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;



