Heim  >  Artikel  >  Backend-Entwicklung  >  smarty的自动过滤$smarty->auto_literal 会影响通体效能吗

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

WBOY
WBOYOriginal
2016-06-13 12:04:49837Durchsuche

smarty的自动过滤$smarty->auto_literal 会影响整体效能吗?
一直都是用{$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}; }
即用空格来防止误解析

模板解析是一次性的(当模板文件的存储时间发生变化时),所以无论你以什么样的策略来书写模板,都不会影响运行速度(第一次除外)
------解决方案--------------------
我是用{# #}做定界符的,避免那個問題。

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn