繁体   English   中英

如何使用 php json_encode 打印数据数组

[英]How to print data array using php json_encode

我想使用 php json_encode打印这样的数据,所以使用 java 脚本代码输出这些数据的 php 代码是什么。

var data = [{
"name": "test",
    "calories": "1000",
    "fat": "100",
    "protein": "100",
    "carbohydrates": "800",
 }, {
"name": "test2",
    "calories": "10000",
    "fat": "343",
    "protein": "3434",
    "carbohydrates": "4343",
 }];

我正在尝试这个 php 代码,但数据输出不像我想要的。

<?PHP
 $RESULT = array();

 for($x=0;$x<=4;$x++){
   $RESULT["data"]["name"][]    = "Name" . $x;
   $RESULT["data"]["calories"][]    = "calories" . $x;
   $RESULT["data"]["fat"][]    = "fat" . $x;
   $RESULT["data"]["protein"][]    = "protein" . $x;
   $RESULT["data"]["carbohydrates"][]    = "carbohydrates" . $x;
 }

 echo $_GET['callback']."(".json_encode($RESULT).");";
?>

我希望 json_encode 像第一个代码一样打印数据。

我不确定您打算如何使用它或您正在使用$_GET['callback']做什么,但主要问题是您需要在data下的新数组下附加元素:

for($x=0;$x<=4;$x++){
    $RESULT["data"][$x]["name"] = "Name" . $x;
    $RESULT["data"][$x]["calories"] = "calories" . $x;
    $RESULT["data"][$x]["fat"] = "fat" . $x;
    $RESULT["data"][$x]["protein"] = "protein" . $x;
    $RESULT["data"][$x]["carbohydrates"] = "carbohydrates" . $x;
}
echo json_encode($RESULT, JSON_PRETTY_PRINT);

所以:

$RESULT["data"][$x]["name"]

不是:

$RESULT["data"]["name"][]

暂无
暂无

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

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