Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/292.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 修复了预期的数组,但得到了对象?_Php_Angularjs - Fatal编程技术网

Php 修复了预期的数组,但得到了对象?

Php 修复了预期的数组,但得到了对象?,php,angularjs,Php,Angularjs,我试图使用API显示数据库中的数据,但出现以下错误: "Expected array but received: {"data":{"useri":[{"ID":"1","username":"asdas","city":"asdasd","age":"20"}," 我如何才能使其只获取ID为1的数组 PHP: JS: 我如何才能使其只获取ID为1的数组 此外,html: <tr ng-repeat="user in users| filter:search_query">

我试图使用API显示数据库中的数据,但出现以下错误:

"Expected array but received: {"data":{"useri":[{"ID":"1","username":"asdas","city":"asdasd","age":"20"},"
我如何才能使其只获取ID为1的数组

PHP:

JS:

我如何才能使其只获取ID为1的数组

此外,html:

<tr ng-repeat="user in users| filter:search_query">
            <td>
            <span>{{user.username}}</span></td>
            <td>{{user.city}}</td>
            <td>{{user.age}}</td>
            <td>
</tr>

{{user.username}
{{user.city}
{{user.age}
当您将“useri”作为索引时,json\u编码输出总是一个json对象

要输出json数组,要编码的数组应该只是索引数组

$indexed_array = array($user1, $user2);

$associative_array = array("user1" => $user1, "user2" => $user2);
所以你可以这样做

if($num > 0){
    $users_array = array(); //stocam userii intr-un array

    while($num = $rdej->fetch(PDO::FETCH_ASSOC)){
        extract($num);

        $users_item = array(
            "ID" => $ID,
            "username" => $username,
            "city" => $city,
            "age" => $age
        );

        array_push($users_array, $users_item);


    }

    // 200 OK - request reusit
    http_response_code(200);

    echo json_encode($users_array);
}
如果您需要对useri的引用,那么您可以在客户端的javasript中这样做

当您将“useri”作为索引时,json_编码输出总是一个json对象

要输出json数组,要编码的数组应该只是索引数组

$indexed_array = array($user1, $user2);

$associative_array = array("user1" => $user1, "user2" => $user2);
所以你可以这样做

if($num > 0){
    $users_array = array(); //stocam userii intr-un array

    while($num = $rdej->fetch(PDO::FETCH_ASSOC)){
        extract($num);

        $users_item = array(
            "ID" => $ID,
            "username" => $username,
            "city" => $city,
            "age" => $age
        );

        array_push($users_array, $users_item);


    }

    // 200 OK - request reusit
    http_response_code(200);

    echo json_encode($users_array);
}

如果您需要对useri的引用,那么您可以在客户端的javasript中执行该操作

创建额外信息的是您的代码,因此只需停止添加您不想要的子数组

if($num > 0){
    $users = [];

    while($user = $rdej->fetch(PDO::FETCH_ASSOC)){

        $users[] = array(
                        "ID" => $user['ID'],
                        "username" => $user['username'],
                        "city" => $user['city'],
                        "age" => $user['age']
                    );
    }

    // 200 OK - request reusit
    http_response_code(200);

    echo json_encode($users);
不要在全局范围内特别尝试


是您的代码创建了额外的信息,所以不要再添加您不想要的子数组了

if($num > 0){
    $users = [];

    while($user = $rdej->fetch(PDO::FETCH_ASSOC)){

        $users[] = array(
                        "ID" => $user['ID'],
                        "username" => $user['username'],
                        "city" => $user['city'],
                        "age" => $user['age']
                    );
    }

    // 200 OK - request reusit
    http_response_code(200);

    echo json_encode($users);
不要在全局范围内特别尝试