0

以下是否可以接受,即使$my_flag可能没有设置?

{if ( $my_flag )}
    // Vrooom
{/if}

我是否总是需要isset确保不会抛出通知,或者 Smarty3 是否会处理这些事情?

4

1 回答 1

0

这是可以接受的,但 PHP 会警告您$my_flag未定义。

我会做这样的事情:

{if isset($my_flag)}
    {if $my_flag == 123}
        <p>print something</p>
    {/if}
{/if}

如果您尝试当前的脚本,一切都会正常工作,但它会记录一个通知。上面的脚本确保只有当变量被设置然后做一些事情。

但是,由于 Smarty 已缓存,您可能需要重新加载页面几次才能看到更改(除非您指定$smarty_obj->force_compile = true;)。

于 2012-07-16T20:50:07.873 回答