使用动态PHP变量绘制图表绘图点

时间:2016-03-03 21:55:18

标签: javascript php flot laravel-5.2 laravel-blade

我有一张表通过laravel php显示数字。这些数字基于一周的时间段,并且与每天相关联的值在刷新时相应地更新。现在我需要在flot图表中获取这些数据。典型的flot图表将具有如下静态点:

var data = [[0, 0], [1, 10], [2,5], [3, 12], [4, 9], [5, 4], [6, 2]];

但我需要每个点都是动态的:

@foreach($days as $day)
 var data = [[{{ $day['carbon']->format('F j, Y') }},{{ $day['total'] }}]]
@endforeach 

当然,这打破了图表并且它不起作用。我有点被困在这里。任何建议将不胜感激。

1 个答案:

答案 0 :(得分:5)

首先在PHP中构建完整数组。不要担心javascript。

这样的事情:

$data = [];
foreach($days AS $day) {
    $data[] = [$day['carbon']->format('F j, Y'), $day['total']];
}

理想情况下,在控制器中执行此操作。不在视图中。

现在,在您看来,它变得简单了:

<script>
var data = {!! json_encode($data) !!};

注意不同的{!!标记,告诉Laravel不要转义输出。