Jump to main content Jump to doc navigation

modX::toPlaceholders

Устанавливает плейсхолдеры из значений, хранящихся в массивах и объектах.

Каждый рекурсивный уровень в массиве $placeholder добавляет префикс, создавая путь доступа с использованием необязательного разделителя.

Синтаксис

API Doc: modX::toPlaceholders()

array toPlaceholders (array|object  $subject, [string $prefix = ''], [string $separator = '.'], [boolean $restore = false])

Пример

Установите массив плейсхолдеров и префикс «my». Возвращает многомерный массив, содержащий до двух элементов: «keys», который всегда содержит массив ключей-плейсхолдеров, которые были установлены, и при необходимости, если для параметра restore задано значение true, «restore», содержащий массив значений-плейсхолдеров, которые были перезаписаны метод.

$modx->toPlaceholders(array(
  'name' => 'John',
  'email' => 'jdoe@gmail.com',
),'my');

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

Использование вложенных данных в качестве $placeholders:

$modx->toPlaceholders(array(
  'document' => array('pagetitle' => 'My Page')
));

Соответствует плейсхолдерам, таким как [[+ document.pagetitle]] Обратите внимание, что использование префикса $ во вложенных плейсхолдерах добавляет префикс $ в начало each key. Например:

$modx->toPlaceholders(
  array(
    'test' => 'this',
    'document' => array('pagetitle' => 'My Page')
  ), 'tmp'
);

Будет иметь плейсхолдеры, такие как [[+tmp.test]] и [[+tmp.document.pagetitle]]

Смотрите также