php数组,有什么办法获取下一个元素的键值?

$arr = array('c'=>12,'p'=>1233,'a'=>233455);

已知键值p ,如何获取p后面一个元素的键值?

DIEA
浏览 857回答 3
3回答

慕标5832272

array_search(next(),$arr);

炎炎设计

由于不是数字下标,不能直接index+1,所以只能采取指针下移的方式。在下标索引不知道的情况下,只能遍历,复杂度为O(N)楼上的方法也是可以的,不过复杂度还是N,因为array_search还是遍历了所有的key <?php $arr = array('c'=>12,'p'=>1233,'a'=>233455, 'd'=> 'sdfsdfsdf'); while(current($arr)) { if(key($arr) === 'p') { next($arr); echo current($arr); } else { next($arr); } }

慕的地10843

<?php $keys = array_key($arr); $keys[array_search('p', $keys) + 1] ?? null;
打开App,查看更多内容
随时随地看视频慕课网APP