Smarty {if $foo} 相当于 isset()
有没有办法更改 smarty 核心 {if $foo}
以便它使用 isset()
和 $foo|default:$foo2
>?
我问这个问题的原因是因为我收到 PHP 警告消息。
我知道我可以执行 {if isset($foo)} ,尽管在没有 isset() 的情况下编写此代码会很干净。
Is there a way to change the smarty core {if $foo}
so that it uses the isset()
and $foo|default:$foo2
?
The reason I ask this is because I am getting PHP warning messages.
I understand that I can do {if isset($foo)} although it is a lot clean to write this without the isset().
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
在 {if} 内,表达式不应引发任何通知。 (至少曾经是这样)
你可以编写一个简单的 预过滤器 (使用正则表达式)查找“{if $foo}”并将其转换为等效的
{if !empty($foo)}
。如果您觉得自己遇到了错误/需要改进,请在 上分享您的想法错误跟踪器。
within an {if} the expression should not throw any notices. (at least that was the case once)
you could write a simple prefilter that (with regular expressions) looks for "{if $foo}" and converts it to the equivalent
{if !empty($foo)}
.If you feel you've hit a bug / need an enhancement, share your thoughts on the bug tracker.