我试图用PHP编码功能创建这个:
{
"foo": [
{
"bar": "111"
}
]
}
Run Code Online (Sandbox Code Playgroud)
但我可以管理一些PHP数组和json编码是这样的:
{
"foo": [
"{
\"bar\":184530"
}"
]
}
Run Code Online (Sandbox Code Playgroud)
显然我不希望对象作为字符串而是作为对象,所以没有引号.
这是我的PHP:
$stmt->execute();
$stmt->bind_result($bar);
while ($stmt->fetch()) {
$activity_array = array("bar" => $bar);
$activity_json = json_encode($activity_array);
$json_array[] = $activity_json;
}
$json = json_encode($json_array);
echo '{ "foo": ' .$json .'}';
Run Code Online (Sandbox Code Playgroud)
不要将数据结构的位编码为JSON.仅编码最终数据结构.删除此行:
$activity_json = json_encode($activity_array);
Run Code Online (Sandbox Code Playgroud)
这会导致您将一个编码为JSON的数组存储在一个数组中,该数组也被编码为JSON.
您想要一个包含数组(不是JSON位)的数组(编码为JSON).