如何根据PHP值获取下一个或上一个数组值

Dar*_*999 -1 php

我有这样的代码:

$step_master      = [1, 2, 3, 4, 5, 6, 7, 8, 9];
$step_now         = 4;

$step_before = ????;
$step_next   = ????;
Run Code Online (Sandbox Code Playgroud)

我怎样才能得到下一个值或从以前的值$step_now$step_master

所以输出应该是这样的:

Now : 4
Previous : 3
Next : 5
Run Code Online (Sandbox Code Playgroud)

我尝试过使用next()但它没有其他参数$step_now

任何帮助将不胜感激

谢谢

B. *_*sai 5

您可以使用array_search获取当前密钥.然后迭代前一步或下一步

$step_master      = [1, 2, 3, 4, 5, 6, 7, 8, 9];
$step_now         = 4;
$now_index = array_search($step_now,$step_master);

echo "Now = ".$step_now ;
echo "Previous  =".(isset($step_master[$now_index - 1])?$step_master[$now_index -1 ] : "");
echo "Next =".(isset($step_master[$now_index +1 ])?$step_master[$now_index +1 ] : "");
Run Code Online (Sandbox Code Playgroud)