Albireo CMS 2025.01.17

Функция arrayFormat() Albireo CMS

/**
 * Формирование строк из элементов массива с указанным форматом
 * @param array $array - массив, где каждый элемент — вложенный ассоциативный массив
 * @param string $format - строка формат, где ключи массива задаются как %ключ%
 * @param string $before - текст до итоговой строки
 * @param string $after - текст после итоговой строки
 *
 * array(
 *       [
 *           'name' => 'Contacts',
 *           'url' => 'contact',
 *           'icon' => 'bi-envelope',
 *           '_before' => '<hr>',
 *           '_after' => '<br>',
 *       ],
 *       [
 *       ...
 *       ]
 *   );
 *
 *   $format = '<a class="%icon%" href="%url%">%name%</a>'
 *
 *   где %icon% соответствует ключу icon, %url% ключу url и т.п. Все ключи произвольны.
 *
 *   Если ключ имеет имя _before, то его значение добавляется перед текущим элементом.
 *   Если ключ имеет имя _after, то его значение добавляется после текущего элемента.
 *
 */
function arrayFormat(array $array, string $format = '<a class="%icon%" href="%url%">%name%</a>', string $before = '', string $after = '') : string