获取数组中最后一个元素的键

Posted

技术标签:

【中文标题】获取数组中最后一个元素的键【英文标题】:Get key of the last element in an array 【发布时间】:2011-09-09 05:29:56 【问题描述】:

嘿,我有一个包含一组数组的数组,这是一个例子。

array(
    [0]=>array('name'=>'bob'),
    [2]=>array('name'=>'tom'),
    [3]=array('name'=>'mark')
)

如何获取数组中的最后一项,并返回它的键。

所以在上面的例子中它会返回 3。

【问题讨论】:

count($array); ^^ @yes123 如果键是数字且顺序准确,没有任何遗漏,这将不起作用。 How to get last key in an array? 的可能重复项 【参考方案1】:
end($array);
echo key($array)

这应该返回最后一个元素的键。

【讨论】:

本方案中数组的指针被修改为数组的最后一个位置【参考方案2】:

试试$lastKey = end(array_keys($array));

【讨论】:

@yes123 还有?它仍然有效,而且都在一条线上,这很好。 我不想过于迂腐,但这会给出Strict Standards: Only variables should be passed by reference ... 消息。【参考方案3】:
<?php
$a = array(
    0=>array('name'=>'bob'),
    2=>array('name'=>'tom'),
    3=>array('name'=>'mark')
);


$b = array_keys($a);
echo end($b);

?>

类似的东西

【讨论】:

【参考方案4】:

另一种选择:

$last_key = key(array_slice($array, -1, true));

【讨论】:

这不会保留密钥,这可能是这里的要求。【参考方案5】:

你可以创建函数并使用它:

function endKey($array)
end($array);
return key($array);


$array = array("one" => "apple", "two" => "orange", "three" => "pear");
echo endKey($array);

【讨论】:

以上是关于获取数组中最后一个元素的键的主要内容,如果未能解决你的问题,请参考以下文章

php 如何取出数组中第一个和最后一个元素的值

C#中如何获取数组的最后一个元素?

获取一个数组的最后一个键值?

获取数组中最后一个元素

在 TypeScript 中获取 JSON 数组的最后一个元素

PHP - 如何从数组中获取最后一个元素之前的元素?