【问题标题】:PHP array push not working inside a functionPHP数组推送在函数内部不起作用
【发布时间】:2023-01-29 17:25:16
【问题描述】:
function add_member_data($id, $fname, $lname) {
$data = array(
    "ID" => $id,
    "First Name" => $fname,
    "Last Name" => $lname,
);

array_push($all_members, $data);

echo "<pre>";
var_dump($data);
echo "</pre>";

echo "<pre>";
var_dump($all_members);
echo "</pre>";
}

我有这段代码,但数组推送似乎不起作用。谁能帮忙?

【问题讨论】:

  • $all_members 应该是一个全局变量吗?如果是这样,您需要在函数内声明global $all_members;

标签: php reference


【解决方案1】:

所以这里的信息量非常有限- 但要使其正常工作,需要从函数内部访问 $all_members 变量 [并且需要调用该函数]。

这是我将如何做的一个例子:

$all_members = [
   ["ID" => 1, "Firsn Name" => "Edyth", "Last Name" => "Hammes"],
   ["ID" => 2, "Firsn Name" => "Maye", "Last Name" => "Gerhold"],
];

function add_member_data(&$all_members, $id, $fname, $lname) {
   $data = array(
      "ID" => $id,
      "First Name" => $fname,
      "Last Name" => $lname,
   );

   array_push($all_members, $data);

   echo "<pre>";
   var_dump($data);
   echo "</pre>";

   echo "<pre>";
   var_dump($all_members);
   echo "</pre>";
}

add_member_data($all_members, 3, "Jane", "Smith");

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-07-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-01-06
    • 1970-01-01
    相关资源
    最近更新 更多