Php 数组中的最后一条记录返回null

Php 数组中的最后一条记录返回null,php,arrays,Php,Arrays,我正在为电梯和那里的人编写一个PHP练习脚本,这并不重要,因为一切都准备好了,尽管-任务结束时出现了一个问题。我想显示数组的最后一条记录,更具体地说是权重 抱歉,我得到一个空参数错误,尽管最后一条数组记录的print\r返回正确的数据。我做错了什么 $elevatorContent = array ( array ( "firstname" => "Peter", "weight" => 70 ), array ( "firstna

我正在为电梯和那里的人编写一个PHP练习脚本,这并不重要,因为一切都准备好了,尽管-任务结束时出现了一个问题。我想显示数组的最后一条记录,更具体地说是权重

抱歉,我得到一个空参数错误,尽管最后一条数组记录的print\r返回正确的数据。我做错了什么

$elevatorContent = array (

    array (
    "firstname" => "Peter",
    "weight" => 70
    ),

    array (
    "firstname" => "Cassie",
    "weight" => 70
    ),

    array (
    "firstname" => "John",
    "weight" => 150
    ),

    array (
    "firstname" => "Agnes",
    "weight" => 150
    ),

);  
这将返回null

echo "<p>The last person in elevator is <b>".end($elevatorContent['firstname']). "<b></p>";
echo“电梯里的最后一个人是“.end($elevatorContent['firstname'])。“

”;
您需要小幅度的更正:

php返回给定数组的最后一个元素,所以必须首先获取最后一个元素,然后通过键访问它

从PHP 5.4开始:

在PHP5.3或更早版本上,需要使用临时变量

$last_arr = end($elevatorContent);
echo $last_arr["firstname"];
因此,它变成:

echo "<p>The last person in elevator is <b>" . end($elevatorContent)['firstname'] . "<b></p>";
echo“电梯里的最后一个人是”。结束($elevatorContent)['firstname']。“

”;

$last\u arr=end($elevatorContent);
echo“电梯里的最后一个人是“$last_arr[“firstname”]。“

”;
试试看:

echo "<p>The last person in elevator is <b>" . $elevatorContent[count($elevatorContent) - 1]['firstname'] . "<b></p>";
echo“电梯里的最后一个人是”$elevatorContent[计数($elevatorContent)-1]['firstname']。“

”;
$last=end($elevatorContent);
echo“电梯里的最后一个人是“$last['firstname']。“

”;
echo“电梯里的最后一个人是”。结束($elevatorContent)['firstname']。“

”;
虽然没有错,但现在已硬编码。如果姓名列表是动态的怎么办?您可以使用:echo“电梯中的最后一个人是”。结束(结束($elevatorContent))。“

”;你说得对,它很管用——谢谢;)我将你的答案标记为问题已解决,但我需要等待8分钟;)$最后=结束($elevatorContent);echo“电梯里的最后一个人是“$last['firstname']。“

”;end();仅返回数组格式,因此不能返回直接数组
echo "<p>The last person in elevator is <b>" . end($elevatorContent)['firstname'] . "<b></p>";
$last_arr = end($elevatorContent);
echo "<p>The last person in elevator is <b>".$last_arr["firstname"]. "<b></p>";
echo "<p>The last person in elevator is <b>" . $elevatorContent[count($elevatorContent) - 1]['firstname'] . "<b></p>";
$last = end($elevatorContent);
echo "<p>The last person in elevator is <b>".$last['firstname']. "<b></p>";
echo "<p>The last person in elevator is <b>" . end($elevatorContent)['firstname'] . "<b></p>";