Highcharts使用PHP数组添加了几个系列

时间:2016-01-28 09:58:27

标签: php arrays json symfony highcharts

我使用highcharts来显示一些数据库信息,所以当我使用一个系列时我没有任何问题,但是当我想在我的图表上添加几个系列时,它有一点点难。

首先是我的PHP脚本:

foreach ($informationslier as $keyFille => $fille) {
    $grafData = array();

    foreach ($fille['information'] as $keyInfos => $information) {
        $mois = $information['created']->format('m');
        $mois = $mois - 1;

        $timestamp = strtotime($information['created']->format('j').'-'.$mois.'-'.$information['created']->format('Y'));
        //Multiply by 1000 to get seconds in js
        $timestamp = $timestamp * 1000;
        $grafData[$keyInfos] = array($timestamp, (float)$information['valeur']);
        //$grafData[$keyInfos] = implode(', ', $grafData[$keyInfos]);
        //$grafData[] = "[Date.UTC(".$information['created']->format('Y').','.$mois.','.$information['created']->format('j')."),".$information['valeur']."]";
    }

    $tabInformationsData[$keyFille]['name'] = 'Evolution '.$fille['titre'];
    $tabInformationsData[$keyFille]['color'] = '#FFA020';
    //$tabInformationsData['infos'][$keyFille]['data'] = array();

    //$implodeGraf = implode(',', $grafData);
    $tabInformationsData[$keyFille]['data'] = $grafData;
}

php脚本给我这样的东西:

Array
(
     [0] => Array
         (
            [name] => Evolution pourcentage
            [color] => #FFA020
            [data] => Array
                (
                    [0] => Array
                        (
                            [0] => 1451084400000
                            [1] => 17.00
                        )
                    [1] => Array
                        (
                            [0] => 1451170800000
                            [1] => 19.00
                        )
                    [2] => Array
                        (
                            [0] => 1451257200000
                            [1] => 14.00
                        )
                    [3] => Array
                        (
                            [0] => 1451343600000
                            [1] => 6.00
                        )
                )
        )
)

我发送这个数组到我的视图,我这样做:

series: {{ graphique | json_encode() | raw }},

但是在HTML中,渲染看起来像这样并且不起作用:

series: [{
    "name":"Evolution pourcentage",
    "color":"#FFA020",
    "data":[[1451084400000,"17.00"],[1451170800000,"19.00"],[1451257200000,"14.00"],[1451343600000,"6.00"]]
}],

我不知道它为什么不起作用......我试着将时间戳乘以1000,但没有任何效果。 那么,我该如何显示我的所有系列?

EDITED

通过将所有日期传递给时间戳并在所有值之前添加(浮动)来工作......我使用响应编辑了我的帖子。

谢谢

1 个答案:

答案 0 :(得分:0)

也许

  • 迭代您的{{ my_array }}树枝变量
  • 仅为您的JSON使用unicode字符:JSON specification