【发布时间】:2021-02-05 17:20:11
【问题描述】:
我正在尝试访问php中关联数组的下一个键值对,以检查下一个键值对是否相同。
foreach($array as $key => $value){
$b = $value['date'];
$c = ($key+1)['date']; // As ($key+1) is integer value not an array
if($b == $c){
statement
}
}
但是,这种方法似乎是合乎逻辑的。
ErrorException: 试图访问 int 类型值的数组偏移量
有什么方法可以在关联数组的foreach 循环中找到下一个元素。
array (
0 =>
array (
'date' => "2019-03-31",
'a' => '1',
'b' => '1',
),
1 =>
array (
'date' => "2019-04-02",
'a' => '1',
'b' => '1',
),
2 =>
array (
'date' => "2019-04-02",
'a' => '2',
'b' => '1',
)
)
【问题讨论】:
-
($key+1)是一个整数值,所以($key+1)['date']会报错。尝试$array[$key + 1][$date]并小心最后一次迭代。 -
没错,那么我该如何比较呢?
标签: php arrays associative-array