>  기사  >  백엔드 개발  >  smarty的自动过滤$smarty->auto_literal 会影响整体效能吗?

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

WBOY
WBOY원래의
2016-06-23 13:51:39887검색

一直都是用{$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之外不会有什么冲突


谢谢两位,知道不会影响运作效能就行了
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.