如何获得数组的最后一个键?
#1楼
只需使用: echo $array[count($array) - 1];
#2楼
不知道这是否会更快,但是用这种方法似乎更容易,并且可以通过不将函数传递给end()来避免错误。
它只需要一个变量...再写一行代码就没什么大不了的,然后在需要时取消设置。
$array = array(
'first' => 123,
'second' => 456,
'last' => 789,
);
$keys = array_keys($array);
$last = end($keys);
#3楼
$arr = array('key1'=>'value1','key2'=>'value2','key3'=>'value3');
list($last_key) = each(array_reverse($arr));
print $last_key;
// key3
#4楼
-
end()
将array的内部指针前进到最后一个元素,并返回其值。 -
key()
返回当前数组位置的索引元素。
因此,像这样的一部分代码应该可以解决问题:
$array = array(
'first' => 123,
'second' => 456,
'last' => 789,
);
end($array); // move the internal pointer to the end of the array
$key = key($array); // fetches the key of the element pointed to by the internal pointer
var_dump($key);
将输出:
string 'last' (length=4)
即我数组的最后一个元素的键。
完成此操作后,数组的内部指针将位于数组的末尾。 如注释中所指出的那样,您可能需要在数组上运行reset()
,以使指针回到数组的开头。
#5楼
尝试使用array_pop和array_keys函数,如下所示:
<?php
$array = array(
'one' => 1,
'two' => 2,
'three' => 3
);
echo array_pop(array_keys($array)); // prints three
?>
来源:oschina
链接:https://my.oschina.net/stackoom/blog/3196706