5

获取数组最后一项的最快和最简单的方法是索引数组、关联数组还是多维数组?

4

6 回答 6

28
$myArray = array( 5, 4, 3, 2, 1 );

echo end($myArray);

打印“1”

于 2009-12-18T08:41:41.593 回答
2

数组弹出()

它从数组末尾删除元素。如果您需要保持数组完好无损,您可以使用它,然后将值附加回数组的末尾。$array[] = $popped_val

于 2009-12-18T08:38:48.840 回答
2

试试这个:

$arrayname[count(arrayname)-1]
于 2009-12-18T08:41:53.533 回答
1

我会说array_pop在文档中:array_pop

array_pop — 从数组末尾弹出元素

于 2009-12-18T08:39:20.290 回答
1

很多很棒的答案。如果您不止一次这样做,请考虑编写一个函数:

function array_top(&$array) {
    $top = end($array);
    reset($array); // Optional
    return $top;
}

或者,根据你的脾气:

function array_top(&$array) {
    $top = array_pop($array);
    $array[] = $top; // Push top item back on top
    return $top;
}

$array[] = ...首选array_push(),参见文档。)

于 2009-12-18T08:52:24.027 回答
0

对于关联数组:

$a= array('hi'=> 'there', 'ok'=> 'then');
list($k, $v) = array(end(array_keys($a)), end($a));
var_dump($k);
var_dump($v);

编辑:也应该适用于数字索引数组

于 2009-12-18T08:45:52.510 回答