我有一个用 PHP 创建的数组,然后通过 JSON 编码到我的 javascript 中。
数组在这里定义:
$stmt -> bind_result($match_id, $hero, $mmr);
while($stmt -> fetch()){
$grapharray[] = array($hero => $mmr);
}
和此处编码的 JSON:
$grapharray_labelled = array(
"label" => "MMR Over time",
"data" => $grapharray
);
这里:
var graphdata = <?php echo JSON_encode($grapharray_labelled); ?>;
我运行网页时的输出是 graphdata
=:
{
"label":"MMR Over time",
"data":[
{"Rubick":6524},
{"Lion":6550},
{"Magnus":6565},
{"Keeper of the Light":6566}
]
}
但是我希望它是这样的:
{
"label":"MMR Over time",
"data":[
["Rubick", 6524],
["Lion", 6550],
["Magnus", 6565],
["Keeper of the Light", 6566]
]
}
原因: 我想更改格式,因为我试图让 flot 工作,而 flot 接受数组数组作为数据类型。
否则:是否有更好的方法以我想要的格式将数组从 PHP 传输到 JavaScript?
最佳答案
更改此:
$grapharray[] = array($hero => $mmr);
致:
$grapharray[] = array($hero, $mmr);
关于javascript - 更改 JSON_Encode 输出格式(括号和逗号),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21673081/