2012-06-26 4 views
0

У меня есть .tpl файл с переменными %% в нем..tpl файл и %%. Это умный?

Пример:

%%GLOBAL_Error%% 

Является ли это умник файл шаблона двигателя?

Я хочу проверить, не является ли эта переменная пустой, но я не могу это сделать с регулярным синтаксисом smarty.

{if isset($GLOBAL_Error) } 

Как я могу это сделать?

Я получил ответ, что это Twig шаблон двигателя: S

ответ

1

По умолчанию smarty использует { и } в качестве разделителей. Таким образом, вы можете написать код:

{if $GLOBAL_Error}{/if} 

Но разделители могут быть изменены, чтобы %% и код должен быть в такой форме:

%%if $GLOBAL_Error%%%%/if%% 

Смотри также: http://www.smarty.net/docsv2/en/language.escaping.tpl

+1

Thx это работает в Smarty, но я получите ответ, что это движок шаблонов Twig: S – senzacionale

1

Это может быть, но это не может быть. Smarty tag delimiters настраиваются, поэтому разработчик может установить %% и %%. GLOBAL_Error может не быть переменной, а вызовом функции без параметров. В этом случае вам понадобится что-то вроде:

%%if (%%GLOBAL_Error%%) %% 

Это довольно уродливый синтаксис. Это может быть что угодно, может быть, токен строки для поиска или замены до или после компиляции шаблона. Если вы уже используете Smarty со стандартными разделителями, то маловероятно, что %%GLOBAL_Error%% предназначен для анализа Smarty - это может быть даже ошибка или реликвия старого кода. Единственный способ узнать наверняка - спросить автора или просто взглянуть на кодовую базу.