Точки графика Flot Chart с динамическими переменными PHP

У меня есть таблица, которая отображает числа через laravel php. Цифры основаны на периоде в одну неделю, и значения, связанные с каждым днем, соответственно обновляются при обновлении. Теперь мне нужно получить эти данные внутри флоат-чарта. Типичный график флота будет иметь такие статические точки:

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 

И, конечно, это ломает схему и не работает. Я как-то застрял здесь. Любые предложения будут ценны.


person Nick Balistreri    schedule 03.03.2016    source источник


Ответы (1)


Сначала создайте полный массив в PHP. Не беспокойтесь о javascript пока.

Что-то вроде этого:

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

В идеале, сделайте это в своем контроллере. Не в представлении.

Теперь, на ваш взгляд, это становится легко:

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

Обратите внимание на другой тег {!!, который говорит Laravel не избегать вывода.

person jszobody    schedule 03.03.2016
comment
Что ж, это определенно помогло ... по крайней мере, я получил график, но на графике еще нет точек. Это определенно шаг в правильном направлении. Большое спасибо. - person Nick Balistreri; 04.03.2016