从php和mysql创建json结构

时间:2016-01-15 05:10:09

标签: php json

我想从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
        }]
    }]

如何创建这样的结果结构?

4 个答案:

答案 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');