我在我的tpl文件中使用它,比如
{strip_tags({$obj->getfunc()})}
它会给出syntax error: unrecognized tag:
语法错误
完整的错误消息
<b>Fatal error</b>: Smarty error: [in file.tpl line 7]: syntax error: unrecognized tag: strip_tags({$obj->getfunc()
答案 0 :(得分:1)
您的代码:
strip_tags({$obj->getfunc()})
这里的问题是{}
花括号。我不知道为什么你认为你需要这些,但它们不是必需的。
[编辑]
我看到你编辑了问题/评论,注意到你正在使用Smarty。现在花括号是有道理的。
我猜你刚开始使用{$obj->getfunc()}
,并决定对其进行strip_tags()
以防止黑客入侵。
{}
大括号是Smarty的一部分,所以你应该只对这整个代码块使用它们。所以你需要在`strip_tags()函数之外,而不是在你之前的方法调用里面。
所以不应该使用strip_tags({$obj->getfunc()})
,而应该是这样的:
{strip_tags($obj->getfunc())}
希望有所帮助。
[编辑2]
好的,我是一个PHP开发人员,而不是一个聪明的开发人员。上面的代码是有效的PHP(不包括{}
大括号)。但也许聪明不喜欢那样。
我用Google搜索并在Smarty网站上找到了这个页面:http://www.smarty.net/docs/en/language.modifier.strip.tags.tpl
该页面为strip_tags提供了一些特定的Smarty语法,因此基于此,看起来您的代码应如下所示:
{$obj->getfunc()|strip_tags}
答案 1 :(得分:1)
我不是在演示级别而是在业务逻辑级别运行此函数。
答案 2 :(得分:0)
将{
替换为模板中的JavaScript代码{literal}
和}
{/literal}