我需要在智能模板中显示一个或另一个部分。我的条件很简单:如果一个聪明的值以字符串开头,我应该显示一个部分,否则应该显示另一个聪明的部分。我只能更改tpl文件。
{php}
if (substr($url,0,4) != 'http')
{
{/php}
section 1
{php}
}
else
{
{/php}
section 2
{php}
}
{/php}
问题是我无法读取先前使用$ smarty-> assign分配的url变量。基本上,我正在寻找可用于检索值的智能函数,或者是否有更好的解决方案。
答案 0 :(得分:5)
首先,我会清理你的代码。你不需要php标签,你使用的是smarty:
{if substr($url,0,4) neq 'http'}
section 1
{else}
section 2
{/if}
这是未经测试的,但它应该非常接近......
现在,如果您尝试读取类似常量的内容,例如像HTTP_HOST这样的服务器变量,则可以执行以下操作:
{assign var='url' value=$smarty.server.HTTP_HOST}
{if substr($url,0,4) neq 'http'}
section 1
{else}
section 2
{/if}