Php 修复了预期的数组,但得到了对象?
我试图使用API显示数据库中的数据,但出现以下错误: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">
"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);
不要在全局范围内特别尝试