为什么来自 php 的数组内容没有输入到 js 中的数组?

我有一个小问题,重点是我的数组没有获取内容。

$staff = array(
"permissions" => false,"staff" => true,"group" => 3
);
echo json_encode($staff);
let staff = [];

$.ajax({
    type: "POST",url: "../includes/signin.inc.php",})
.done(function (data) {
    staff = JSON.parse(data);
    console.log(staff);
})
.fail(function (xhr,status,error) {
  alert(status);
});

我有这个错误: Unexpected end of JSON input

只是我想在 js 中将数组 $staff 放入员工中。

wangsl002 回答:为什么来自 php 的数组内容没有输入到 js 中的数组?

你应该使用

header('Content-Type: application/json');

在将您的 JSON 从服务器发送到客户端之前。那么错误就会消失。

,

好吧,我在浏览器中检查了网络,我的变量为空。

现在可以了,代码:

    $_SESSION['group'] = $row['permissions'];
        include 'group.inc.php';
header('Content-Type: application/json');

session_start();

$group = $_SESSION['group'];

switch ($group) {
    case '0':
        break;
    case '1':
        $_SESSION['permissions'] = false;
        echo json_encode($_SESSION['staff'] = true);
        $_SESSION['group'] = 1;
        break;
    case '2':
        $_SESSION['permissions'] = false;
        echo json_encode($_SESSION['staff'] = true);
        $_SESSION['group'] = 2;
        break;
    case '3':
        $staff = array(
            "permissions" => false,"staff" => true,"group" => 3
        );
        echo json_encode($staff);
        break;
}
  console.log(data.group);
  console.log(data.staff);
  console.log(data.permissions);

结果:

{permissions: false,staff: true,group: 3}
group: 3
permissions: false
staff
本文链接:https://www.f2er.com/820.html

大家都在问