我有一个多维PHP数组,我想插入到Javascript图形库中。如何将PHP数组插入到创建Highcharts.Chart
对象的JS代码中?
我注意到JS变量series
包含一个对象数组,而在PHP中,一切都在数组中。
PHP数组
(print_r($array)
的结果)
Array
(
[boston] => Array
(
[0] => 4623
[1] => 18094
[2] => 12176
[3] => 6521
[4] => 4559
[5] => 6450
[6] => 5814
)
[chicago] => Array
(
[0] => 1240
[1] => 9923
[2] => 9546
[3] => 4568
[4] => 3384
[5] => 4797
[6] => 4469
)
[philadelphia] => Array
(
[0] => 0
[1] => 1529
[2] => 4063
[3] => 838
[4] => 547
[5] => 1443
[6] => 1209
)
)
Javascript数组示例:
chart = new Highcharts.Chart({
series: [{
name: 'boston',
data: [7.0, 6.9, 9.5, 14.5, 18.2, 21.5, 25.2, 26.5, 23.3, 18.3, 13.9, 9.6]
}, {
name: 'chicago',
data: [-0.2, 0.8, 5.7, 11.3, 17.0, 22.0, 24.8, 24.1, 20.1, 14.1, 8.6, 2.5]
}, {
name: 'philadelphia',
data: [-0.9, 0.6, 3.5, 8.4, 13.5, 17.0, 18.6, 17.9, 14.3, 9.0, 3.9, 1.0]
}]
});
答案 0 :(得分:0)
json_encode($ array)将为您提供一个javascript可解析数组。
答案 1 :(得分:0)
这样的事情应该将您的数据转换为您在js中期望的格式:
<?php
$newData = array();
foreach($data as $city=>$values){
$newData[] = array('name'=>$city,'data'=>$values)
}
echo json_encode($newData);
答案 2 :(得分:-1)
这就是我开始组织一些数据的方式:
<?
$data[boston] = array(1,2,3,4);
$data[new_york] = array(6,12,18,24);
print_r($data);
foreach ($data as $key => &$value) {
echo "name: $key \n";
echo "data: [" . implode(",", $value) . "]\n";
}
?>