PHP获取已知当前数组键的前一个数组元素

我有一个带有特定键的数组:

数组(
420=>数组(…),
430=>数组(…),
555=>数组(…)
)

在我的应用程序中,我知道当前密钥(例如555)。我想得到上一个数组元素。在本例中,它是键为430的数组元素。如何在PHP中实现这一点?我尝试使用prev(),但是对于这个函数,我们应该知道当前的数组元素。我没有找到设置当前数组元素的函数

一种选择:

要将内部指针设置到某个位置,必须将其向前移动(使用下一步,可以在之前执行重置,以确保从数组的开头开始):

while(key($array)!==$key)next($array);

然后您可以使用prev()

$prev\u val=prev($array);
//要拿到钥匙
$prev_key=key($array);

根据以后对数组的操作,可能需要重置内部指针

如果该键在数组中不存在,则有一个无限循环,但这可以通过以下方法解决:

while(key($array)!==null&key($array)!==key)

当然,prev将不再为您提供正确的值,但我假设您正在搜索的密钥将在数组中

发表评论