获取多维数组的最后一个索引


get last index of a multidimensional array

当我阅读如何获得多维数组的最后一个值时,end(array)已经出现了多次。我的问题是类似的,我有一个这样的数组:

array = (
[12] => Array (xxx => xxx),
[34] => Array (xxx => xxx),
[56] => Array (yyy => yyy)
);

我想要得到索引号。如果我使用end(array),我将得到从[56]索引的整个数组。我如何得到[56]本身而不是数组?

注:我知道我可以使用循环来获取最后一个索引号,我只是不想循环遍历整个数组来获取最后一个索引号。

$keys = array_keys($yourArray);
$lastKey = $keys[count($keys)-1];

那么,拿钥匙挑最后一个,这个适合你吗?

我不建议在非常大的数组中使用

,如果你要做迭代操作的话。我相信array_keys实际上在内部循环数组(请确认我)。

或者,正如@Ghost在评论中提到的,您可以将数组指向以end()结束,并在其上使用key()来获取键(这更高效):

end($yourArray);
$lastKey = key($yourArray);