如何根据当前值查找数组下一个值

我有如下数组-


Array

(

   [1] => admin

   [5d1acff7-51f5-d10a-8807-5ce3a25f3f01] => atul

   [9324e078-e651-09ab-856c-5d00cf1d6302] => tushar

   [3e4d9711-e4e0-f9de-8d40-5d021f3137fb] => praful

   [b283b589-c527-389f-498b-5cf0ea2338e1] => suraj


)

在这里我无法根据键找到下一个值,所以我想根据当前值找到下一个值。假设我的当前值为“atul”,现在我希望下一个值为“tushar”及其键。


梦里花落0921
浏览 171回答 1
1回答

慕丝7291255

获取搜索字符串的偏移量,增加它,然后从隔离元素访问键和值。检查false布尔结果来自array_search()至关重要。否则递增false变为1,然后您的脚本不正确。代码:$array = [   1 => 'admin',   '5d1acff7-51f5-d10a-8807-5ce3a25f3f01' => 'atul',   '9324e078-e651-09ab-856c-5d00cf1d6302' => 'tushar',   '3e4d9711-e4e0-f9de-8d40-5d021f3137fb' => 'praful',   'b283b589-c527-389f-498b-5cf0ea2338e1' => 'suraj'];$values = array_values($array);$offset = array_search('atul', $values);if ($offset !== false && isset($values[++$offset])) {    $element = array_slice($array, $offset, 1, true);    echo key($element) , " : " , current($element);} else {    echo "not found or no next";}输出:9324e078-e651-09ab-856c-5d00cf1d6302 : tushar
打开App,查看更多内容
随时随地看视频慕课网APP