Не получается получить данные через json_decode
Здравствуйте.
Хотел вставить в mFilter2 фильтр по MIGX полю, вот по этой статье modx.pro/solutions/14715.
Как обычно, сразу ничего не получилось и стал смотреть код кастомного класса. Споткнулся вот на этом:
Данные не извлекаются.
var_dump(json_decode($value)); — выводит NONE (какая-то синтаксическая ошибка получается).
Причем через print_r($value) в цикле freoach строки JSON выводятся на экран и ошибок не видно. Если я копирую саму эту строку и вставляю в переменную, то json_decode тоже срабатывает:
Я с JSON мало сталкивался, поэтому ума не приложу, что делать.
Хотел вставить в mFilter2 фильтр по MIGX полю, вот по этой статье modx.pro/solutions/14715.
Как обычно, сразу ничего не получилось и стал смотреть код кастомного класса. Споткнулся вот на этом:
foreach ($values as $value => $ids) {
if ($value !== '') {
//print_r($value);
//print_r('
');
//$value='[{"MIGX_id":"2","title":"test","price":"100","weight":"","key":"test","value":"test2"}]';
$migxs = json_decode(str_replace('"', '"', $value));
//var_dump(json_decode($value));
foreach ($migxs as $migx) {
$title = trim($migx->title);
if (!is_array($results[$title]['resources'])) {
$results[$title]['resources'] = array();
}
$results[$title] = array(
'title' => $title,
'value' => $migx->value,
'type' => 'tv',
'resources' => array_merge($results[$title]['resources'], $ids)
);
}
}
}
Данные не извлекаются.
var_dump(json_decode($value)); — выводит NONE (какая-то синтаксическая ошибка получается).
Причем через print_r($value) в цикле freoach строки JSON выводятся на экран и ошибок не видно. Если я копирую саму эту строку и вставляю в переменную, то json_decode тоже срабатывает:
$value='[{"MIGX_id":"2","title":"test","price":"100","weight":"","key":"test","value":"test2"}]';
var_dump(json_decode($value));
… и даже фильтр появляется (правда пока не работает)…Я с JSON мало сталкивался, поэтому ума не приложу, что делать.
Комментарии: 2
Я столкнулся сегодня на одном из новых сайтах, разработку веду на одинаковых сборках, использую siteExtra, но на последнем сайте migx ни чего не выводит, var_dump(json_decode($value)) дает NULL.
Через getImageList выводит, нифига не пойму что где отвалилось.
Вы нашли причину?
Через getImageList выводит, нифига не пойму что где отвалилось.
Вы нашли причину?
Разобрался!
Обращался к TV полю неверно, вместо "$_modx->resource.icons" а просто «icons»
PS Все, тоже разобрался, там я уже с переменной работаю, которую получаю из условия {if}, поэтому обращение к классу modx не требуется, оно было ранее.
Нормально сам с собой в субботу пообщался =))))
Обращался к TV полю неверно, вместо "$_modx->resource.icons" а просто «icons»
{set $rows = json_decode($_modx->resource.icons, true)}
{foreach $rows as $row}
<h3>{$row.title}</h3>
<img src="{$row.img}" />
{/foreach}
Осталось теперь только понять, почему на других проектах этого не требовалось, сборки одинаковые, сейчас глянул другие сайты, там обращаюсь без $_modx->resource.value, все работаетPS Все, тоже разобрался, там я уже с переменной работаю, которую получаю из условия {if}, поэтому обращение к классу modx не требуется, оно было ранее.
Нормально сам с собой в субботу пообщался =))))
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.