繁体   English   中英

为什么我在 JSON 数据中的输出包含额外的花括号

[英]Why my output in JSON data contain extra curly braces

这段代码的主要问题是它提供了额外的花括号..

<?php   
header('Content-Type: json');
include('config.php');

    for($i=1990;$i<=2016;$i++){
        $sum=0;
        $data1=array();
        $result=mysql_query("select * from crimedetails  where crime_year=$i");
        while($row=mysql_fetch_array($result))
          {
            $sum+=$row['crime_mudered'];
            $data['crime_mudered']=$sum;
            $data['crime_year']=$row['crime_year'];
            }
          $data3[]=$data;
    }           
    array_push($data1,$data3);
    print json_encode($data1);
?>

输出数据:

只需使用 array_merge() 而不是 array_push()

当您将json_encode()应用于关联数组时,方括号变为花括号。 那是因为它将该数组编码为JavaScript 对象表示法(JSON)。 因此,在 JavaScript 中,关联数组是具有属性的对象 而且,要在 JavaScript 中定义具有属性的对象,请使用花括号( {} )。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM