Astra.CMS

 

 

Форум » Приемы конструирования и интеграции дизайна

Аналог php-функции explode() в Smarty

Автор Текст сообщения

molotoff
Сообщений: 10

Существует ли аналог функции explode() в Smarty? В мануале к смарти не нашел соответствующего модификатора строки.
Например мне требуется извлечь из строки $stroka="Первый уровень » Второй уровень" данные после символа "»" и присвоить эти данные какой-либо переменной. Через пхп это можно легко осуществить с помощью explode:
$data=explode("»", $stroka);
$item=$data[1];
print $item; // Выведет данные после »
Как это осуществить с помощью смарти и если никак, то другой вопрос: как при работе с пхп в шаблоне блока {php}...{/php} получить доступ к переменным блока, заданным вне {php}...{/php}?
aristoc

admin
Сообщений: 1159

В качестве модификаторов в шаблонах smarty можно использовать php функции.
(Для этого нужно отключить защищенный режим Smarty в настройках системы)

{assign var="result" value="»"|explode:$stroka} {* Разбор строки на элементы по разделителю. *}
{$result.0} {* Первый элемент. *}
{$result.1} {* Второй элемент. *}

molotoff
Сообщений: 10

пасиб