JavaScript:
var chartData = [];
for (var i = 0; i< data.prices.length; i++)
{
chartData.push
({
"date": data.prices[i][0],
"value": data.prices[i][1],
"volume": data.total_volumes[i][1]
});
}
我的尝试(PHP):
$chartData = [];
$length = count($data->prices);
for ($i = 0; $i < $length; $i++)
{
$chartData[] = array($data->prices[$i][0],$data->prices[$i][1],$data->total_volumes[$i][1]);
}
我正在尝试使用php处理API服务器端的数据,然后为javascript编码数据。我在“ date”:“ value”:和“ volume”:停留在将这个javascript代码段转换为PHP:我不知道在PHP中这等效于什么。看起来好像它们是javascript中将数据推送到数组的标签?如何在PHP中为被压入数组的数据添加相同的标签?
答案 0 :(得分:5)
您非常接近,可以通过以下操作在PHP中定义键和值:
$chartData[] = array(
"date" => $data->prices[$i][0],
"value" => $data->prices[$i][1],
"volume" => $data->total_volumes[$i][1]
);
答案 1 :(得分:3)
这是一种“聪明”的方式:
$chartData = array_map(function($price,$volume) {
return array(
"date" => $price[0],
"value" => $price[1],
"volume" => $volume[1]
);
}, $data->prices, $data->total_volumes);