我想从PHP生成Json
并生成如下所示的结果
series: [{
name: "Brands",
colorByPoint: true,
data: [{
name: "Microsoft Internet Explorer",
y: 56.33,
drilldown: "Microsoft Internet Explorer"
}, {
name: "Chrome",
y: 24.03,
drilldown: "Chrome"
}, {
name: "Firefox",
y: 10.38,
drilldown: "Firefox"
}, {
name: "Safari",
y: 4.77,
drilldown: "Safari"
}, {
name: "Opera",
y: 0.91,
drilldown: "Opera"
}, {
name: "Proprietary or Undetectable",
y: 0.2,
drilldown: null
}]
}]
如何创建这样的结果结构?
答案 0 :(得分:0)
您可以使用mysqli_fetch_array()
函数使用while循环和json_encode()
结果数组从mysql数据库中检索值作为数组。
例如:
while($row = mysqli_fetch_array($result)) {
$result[] = $row;
}
echo json_encode($result);
答案 1 :(得分:0)
创建一个包含object数组的变量,然后包含一些可以根据需要生成内容的属性name:"Brands"
和colorByPoint: true
。除了这些属性,该对象还包含另一个对象数组。数组中的这些对象将包含name: "Safari"
,y: 4.77
等属性。然后使用encode_json($CreatedVariable)
方法生成所需的JSON。
答案 2 :(得分:0)
使用json_encode();功能 这会对你有所帮助。 像这样使用
echo json_encode(array('series'=>$array));
答案 3 :(得分:0)
获得PHP数据后,可以使用json_encode函数。 PHP json_encode()函数用于在PHP中编码JSON。此函数在成功时返回值的JSON表示,在失败时返回FALSE。
以下是说明如何使用json_encode
功能
$catId = $_GET['catId'];
$catId = $_POST['catId'];
$conn = mysqli_connect("localhost","root","password","DBName");
if(!$conn)
{
trigger_error('Could not Connect' .mysqli_connect_error());
}
$sql = "SELECT * FROM TableName";
$result = mysqli_query($conn, $sql);
$array = array();
while($row=mysqli_fetch_assoc($result))
{
$array[] = $row;
}
echo'{"ProductsData":'.json_encode($array).'}'; //Here ProductsData is just a simple String u can write anything instead
mysqli_close('$conn');