Fenom и работа с вложенными плейсхолдерами

1. Имеется вложенный массив в снипете

array (
'a' => '1',
'b' => '2',
'c' => '3',
'key1' => array(
array( 'a' => '1',
'b' => '1', ),

array( 'a' => '2',
'b' => '2', ),
),

'key2' => array(
'b' =>'15',

),
);

2. Все это загоняется в плейсхолдер, ($modx->setPlaceholders() и далее запускается чанк

3. В чанке получается получить доступ только к первому уровню, тоесть к a b c

Так и должно быть?

Если это нормально, тогда вопрос, как мне из снипета передать данные ввиде подобного массива, что бы потом их обработать в чанке?
Sergey
03 февраля 2020, 15:57
modx.pro
623
0

Комментарии: 3

Наумов Алексей
03 февраля 2020, 16:09
0
Внимательно читаем: docs.modx.com/current/ru/extending-modx/modx-class/reference/modx.setplaceholders
Видим:
Используйте toPlaceholders() при работе с многомерными массивами или объектами с переменными…
и далее
В отличие от getChunk, массив $placeholder может не быть глубоко вложенным. Это должен быть простой ассоциативный массив.
А вот здесь уже лучше: docs.modx.com/current/ru/extending-modx/modx-class/reference/modx.toplaceholders
    Sergey
    03 февраля 2020, 16:24
    0
    Ну я использовал setPlaceholders, по описанию аналогично…
      Наумов Алексей
      04 февраля 2020, 09:27
      0
      Что аналогично?
      В описании setPlaceholders написано:
      массив $placeholder может не быть глубоко вложенным. Это должен быть простой ассоциативный массив.
      Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
      3