Home >Backend Development >PHP Tutorial >smarty的自动过滤$smarty->auto_literal 会影响整体效能吗?

smarty的自动过滤$smarty->auto_literal 会影响整体效能吗?

WBOY
WBOYOriginal
2016-06-23 13:51:39894browse

一直都是用{$aaa} 觉得顺手

觉得即便是JS和CSS
大不了用个{literal}  .....  {/literal}

来过滤一下就好了

但没想到后来模版中js的json的东西越来越多
有点JQ插件甚至...需要foreach 我的数据,把数据加到json中


后来觉得还没正式推出,先用$smarty->auto_literal开发吧

但后来...怎么觉得多少有点变慢了

请问一下各位有使用过smarty的朋友,大家会打开这个吗$smarty->auto_literal?

如果都会打开这个,我用不用{ } 这附件其实都一样吧?


如果会影响效能,更换代码{ } 值得吗?


回复讨论(解决方案)

{literal}  .....  {/literal} 和 $smarty->auto_literal 作用一样吗?

{literal}  .....  {/literal} 从其单词含义就可看出(literal 文字)是不解析其间内容,哪怕有模板成分
而 $smarty->auto_literal 默认是 true 手册中解释为:忽略限定符周边的空白
即 { $aaa } 和 {$aaa} 都被解释为模版变量
而在 smarty 时代,通常是这样写样式表的
div { {$name} : {$val}; }
即用空格来防止误解析

模板解析是一次性的(当模板文件的存储时间发生变化时),所以无论你以什么样的策略来书写模板,都不会影响运行速度(第一次除外)

我是用{# #}做定界符的,避免那???。

{literal}  .....  {/literal} 和 $smarty->auto_literal 作用一样吗?

{literal}  .....  {/literal} 从其单词含义就可看出(literal 文字)是不解析其间内容,哪怕有模板成分
而 $smarty->auto_literal 默认是 true 手册中解释为:忽略限定符周边的空白
即 { $aaa } 和 {$aaa} 都被解释为模版变量
而在 smarty 时代,通常是这样写样式表的
div { {$name} : {$val}; }
即用空格来防止误解析

模板解析是一次性的(当模板文件的存储时间发生变化时),所以无论你以什么样的策略来书写模板,都不会影响运行速度(第一次除外)



这个还真没分清楚
只知道能解决我的问题
div { {$name} : {$val}; }  这一招也学到了谢谢


我是用{# #}做定界符的,避免那个问题。



谢谢你的建议,#的确不错,网页中除了CSS#ID之外不会有什么冲突


谢谢两位,知道不会影响运作效能就行了
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn