获取PHP数组中的最后一个键值对
我有一个这样的结构数组:
[33] => Array ( [time] => 1285571561 [user] => test0 ) [34] => Array ( [time] => 1285571659 [user] => test1 ) [35] => Array ( [time] => 1285571682 [user] => test2 )
我怎样才能得到数组中的最后一个值,但维护索引[35]?
我正在寻找的结果是这样的:
[35] => Array ( [time] => 1285571682 [user] => test2 )
尝试使用
end($array);
$last = array_slice($array, -1, 1, true);
请参阅http://php.net/array_slice了解参数的含义。;
PS不同于其他答案,这个实际上是你想要的。 🙂
您可以使用end
来将内部指针前移到end或array_slice
以获取仅包含最后一个元素的数组:
$last = end($arr); $last = current(array_slice($arr, -1));
如果你有一个数组
$last_element = array_pop(array);
就像Gumbo说的那样,
<?php $fruits = array('apple', 'banana', 'cranberry'); echo end($fruits); // cranberry ?>
// if your array keys lile // 0 1 2 3 4 ... $lastindex= count($ar)-1; // but if you are not sure $ar_k=array_keys($ar); $lastindex=$ar_k[count($ar_k)-1]; // will work
另一个解决scheme是:
$value = $arr[count($arr) - 1];
以上将计算数组值的数量,减1,然后返回值。
注意:只有当你的数组键是数字时才能使用。
由于需要关键,所接受的解决scheme不起作用。
这个:
end($array); return array(key($array) => array_pop($array));
将完全按照问题中的示例返回。