2016-03-09 6 views
0

У меня проблема с SMARTY после обновления до последней версии.SMARTY не отображает 0

template.tpl::

var xxxF = {{if false}}1{{else}}0{{/if}}; 
var xxxT = {{if true}}1{{else}}0{{/if}}; 

результат: (оказанной источник):

var xxxF = ; 
var xxxT = 1; 
Когда я использую IF/ELSE заявление, и он должен показать 0, это ничего не показывать

Imo, это должно быть:

var xxxF = 0; 
var xxxT = 1; 

Что случилось?

+0

Smarty обычно использует отдельные фигурные скобки. То же самое происходит при использовании '{if false} 1 {else} 0 {/ if}'? –

+0

да, но в моем коде я должен использовать удвоенные фигурные скобки '($ smarty-> setLeftDelimiter ('{{');)' – Tom

+0

Могу ли я спросить, почему? Я мог представить, что любые силы, которые вы должны сделать, отвечают за проблему, а не за ее умение. –

ответ

1

Я не уверен, что именно стало источником проблемы, но на скомпилированный файл, созданный с помощью Smarty в templates_c я заметил, что версия Smarty была 3.1.28, не последняя (3.1.29).

После того, как я обновил его до последней версии, проблема исчезла, и теперь она работает нормально.

Благодарим вас за комментарии, и все они привели меня к месту, где я смог его исправить.

+0

выберите этот ответ как правильный – m13r

Смежные вопросы