{literal} php 标签,Smarty中{literal}的使用详解

如何在文件里加入JS代码,如果按一般平常添加方法,会出错,解决的方法:

把script套在{literal}{/literal}之间试试看,例如:

{literal}

{/literal}

--------------------------------------------------------------------------------------------------

看到好多ecshop的模板文件中 都有{literal}{/literal} 标签的影子,该标签一般都是把js

包含起来,一直不知道是什么作用,或者这样写有什么含义。找了半天才现在,他的真真作用,还是学习不到位啊。

literal

标签是在smarty中的存在的,这就能理解为什么会出现在ecshop中了。smarty会把所有的{}都当成是自己的程序,我们在js中如果想定义一个函数的话就会用到{}

。smarty一编译就把js中定义函数的{}当做自己的东西来编译。这样就可能出现问题了。为了解决这个问题,于是诞生了{literal}标签。

也可以这样理解:iteral 标签区域内的数据将被当作文本处理,此时模板将忽略其内部的所有字符信息.

该特性用于显示有可能包含大括号等字符信息的 javascript 脚本. 当这些信息处于 {literal}{/literal}

标签中时,模板引擎将不分析它们,而直接显示.(转)

--------------------------------------------------------------------------------------------------

{literal}

{literal}可以让一个模板区域的字符原样输出。这经常用于保护页面上的Javascript或css样式表,避免因为Smarty的定界符{语法}而错被解析。在{literal}{/literal}内的任何标签都不会被解析,原样输出。所以如果你有需要放到{literal}内的标签,首先可以考虑是否用{ldelim}{rdelim}来代替定界符在页面上的显示(不用{literal})。

Note

因为Smarty会忽略那些带空格的定界符,所以通常不需要使用{literal}{/literal},。请确定你的Javascript或者CSS样式表的大括号周围是有空格的。这是Smarty

3的新特性。

Example 7.59. {literal}

标签

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值