对不起我的英文,我需要帮助,我想转换一个会返回此信息的查询。
{"ids":"1","user":"aki","last":"terris","job":"programmer"}{"ids":"1","user":"ako","last":"acros","job":"Artist"}
将其更改为
{
"users": [
{
"user": "aki",
"last": "terris",
"job": "programmer"
},
{
"user": "ako",
"last": "acros",
"job": "Artist"
}
]
}
我尝试了while,foreach但没有给我一个有效的格式,一些帮助
协商:
$sql = $db->query("SELECT * FROM user_s WHERE ids = '1' ");
$set_users = $sql;
前:
$entity = array();
while ($get_users = $set_users->fetch_object()) {
$entity = array(
'id' => $get_users->id,
'user' => $get_users->user
);
}
$fsi = array(
'users' => $entity,
);
echo $fsi;
答案 0 :(得分:0)
试试这个:
$results = new \stdClass;
$results->users = [];
while ($get_users = $set_users->fetch_object()) {
$entity = array(
'user' => $get_users->user,
'last' => $get_users->last,
'job' => $get_users->job,
);
$results->users[] = $entity;
}
echo json_encode($results);
答案 1 :(得分:0)
您可以使用fetch_all
和MYSQLI_ASSOC
选项,以所需格式立即获取数据,即作为关联数组,在使用json_encode
转换时将呈现JSON对象表示法:< / p>
$fsi = [ 'users' => $set_users->fetch_all(MYSQLI_ASSOC) ];
echo json_encode($fsi);
确保使用的SQL查询仅选择您希望以JSON结尾的字段。