{если не установлен} Smarty

php #smarty

#php #smarty

Вопрос:

для чего нужен код для smarty if (!isset($var)){ ?

при использовании {if $x eq ‘5’}, когда $ x не определен в smarty , выдается ошибка function call 'get_template_vars' is unknown or deprecated. . это то, во что я верю, поскольку я потерял надежду, пытаясь узнать, откуда взялась эта ошибка!

Спасибо вам.

Ответ №1:

 {if ! isset($var)}
body must be at least 30 characters. :)
{/if}
 

Комментарии:

1.В качестве альтернативы вы можете использовать not как в {if not isset($var)} исходном коде

Ответ №2:

Попробуйте это.

 {if $missing_var|default:FALSE}
NOT MISSING
{else}
MISSING
{/if}
 

Ответ №3:

Попробуйте это

 {if $var}
   Active
{else}
   Inactive
{/if}
 

Комментарии:

1. что, если $var был УСТАНОВЛЕН и содержал значение FALSE ?

2. если $var не установлен, это приведет к появлению неопределенных уведомлений в smart3.

3. @RamiDabain Избегайте использования логического значения в операторах if, попробуйте вместо этого использовать строку типа $var = ‘HasValue’, если вам все равно нужно выполнить условие. Это может быть проблемой возврата на любом языке, который вы используете, в том числе и на javascript.