Конвертировать данные из PHP в массив JSON - PullRequest
0 голосов
/ 20 ноября 2018

У меня есть некоторые данные, которые мне нужно извлечь из механизма шаблонов PHP Twig и преобразовать в массив JS JSON.

Я могу циклически перемещаться по массиву PHP в TWIG и отправлять значения в JS, напримерИтак:

  var results = []
  {% for res in pqRes|reverse %}
        var res =  "{" + "{{res|raw}}" + "}"
        results.push(res)
  {% endfor %}

Это создает массив, как показано ниже, когда я представляю результаты console.log

 0: "{value: 1, meta: 'Meets'}"
 1: "{value: 2, meta: 'Exceeds'}"
 2: "{value: 1, meta: 'Meets'}"
 3: "{value: 1, meta: 'Meets'}"
 4: "{value: 0, meta: 'Fails'}"

Как я могу вставить эти значения в массив JSON, чтобы у каждого элемента не былоцитаты вокруг этого?

В конечном итоге мне нужно вставить значения в структуру данных, которая выглядит следующим образом:

var chart = new Chartist.Line('.ct-chart', {
 labels: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri'],
 series: [{
  name: 'Workload',
  meta: {customData: 123},
  data: [
      {value: 1, meta: 'This can be anything and will be serialized'},
      {value: 4, meta: {text: 'Can even be Objects'}},
      {value: 2, meta: 10000},
      {value: 1, meta: 'This can be anything and will be serialized'},
      {value: 2, meta: 'This can be anything and will be serialized'}
 ]
 }]
}
});

Источник (https://jsbin.com/kivole/1/edit?js,output)

1 Ответ

0 голосов
/ 20 ноября 2018

В этот момент вы просто помещаете строки в массив javascript.Не используйте массив ...

var obj = { {% for string in foo %}{{ string | raw }},{% endfor %} };

демо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...