当前位置: 首页 > 编程笔记 >

thinkphp使用literal防止模板标签被解析的方法

方俊
2023-03-14
本文向大家介绍thinkphp使用literal防止模板标签被解析的方法,包括了thinkphp使用literal防止模板标签被解析的方法的使用技巧和注意事项,需要的朋友参考一下

本文实例讲述了thinkphp不解析标签直接输出,防止模板标签被解析的方法。分享给大家供大家参考。具体实现方法如下:

在ThinkPHP中可以使用literal标签来防止模板标签被解析,例如:

<literal>

<if condition="$name eq 1 "> value1

<elseif condition="$name eq 2"/>value2

<else /> value3

</if>

</literal>

上面的if标签被literal标签包含,因此if标签里面的内容并不会被模板引擎解析,而是保持原样输出。

如果你的php标签中需要输出类似{$user} 或者 XML标签的情况,可以通过添加literal标签解决混淆问题,例如:

<php>echo '{$Think.config.CUSTOM.'.$key.'}';</php>

这个php标签中的{$Think 可能会被模板引擎误当做标签解析,解决的办法就是加上literal,例如:

<php><literal>echo '{$Think.config.CUSTOM.'.$key.'}';</literal></php>

Literal标签还可以用于页面的JS代码外层,确保JS代码中的某些用法和模板引擎不产生混淆。

总之,所有可能和内置模板引擎的解析规则冲突的地方都可以使用literal标签处理。

希望本文所述对大家的ThinkPHP框架程序设计有所帮助。

 类似资料:
  • 本文向大家介绍ThinkPHP模板IF标签用法详解,包括了ThinkPHP模板IF标签用法详解的使用技巧和注意事项,需要的朋友参考一下 ThinkPHP的IF标签可以用来定义复杂的条件判断,例如: 注意:在condition属性中可以支持eq等判断表达式 ,同上面的比较标签,但是不支持带有”>”、”<”等符号的用法,因为会混淆模板解析,所以下面的用法是错误的: 必须改成: 除此之外,我们可以在co

  • 本文向大家介绍ThinkPHP模板自定义标签使用方法,包括了ThinkPHP模板自定义标签使用方法的使用技巧和注意事项,需要的朋友参考一下 使用模板标签可以让网站前台开发更加快速和简单,使用过dedecms、phpcms等内容管理系统的人应该都知道,cms的前台都是使用模板标签来调用数据。以调用文章列表为例: dedecms可以写成: phpcms可以写成: ThinkPHP的自定义标签同样能够实

  • 问题内容: 在大多数情况下,使用jsoup解析XML都没有问题。但是,如果有XML文档中的标签,jsoup将改变到。这样就无法使用CSS选择器提取标签内的文本。 那么如何防止jsoup“清除” 标签呢? 问题答案: 在jsoup 1.6.2中, 我添加了XML解析器模式,该模式可以按原样解析输入,而无需应用HTML5解析规则(元素内容,文档结构等)。此模式将文本保留在标签中,并允许其倍数等。 这是

  • 本文向大家介绍ThinkPHP模板判断输出Empty标签用法详解,包括了ThinkPHP模板判断输出Empty标签用法详解的使用技巧和注意事项,需要的朋友参考一下 ThinkPHP模板的empty标签用于判断模板变量是否为空值。 ThinkPHP模板empty标签用来判断模板变量是否为空值,其功能相当于PHP中的empty()函数行为。empty标签使用格式如下: 具体用法如下例所示: 该例子等同

  • 本文向大家介绍ThinkPHP模板判断输出Defined标签用法详解,包括了ThinkPHP模板判断输出Defined标签用法详解的使用技巧和注意事项,需要的朋友参考一下 ThinkPHP模板引擎的defined标签用于判断常量是否已经被定义。 ThinkPHP的defined标签用来判断常量是否已经被定义,其功能相当于PHP中的defined()函数。defined标签用法如下: 先在模块操作(

  • 本文向大家介绍ThinkPHP模板范围判断输出In标签与Range标签用法详解,包括了ThinkPHP模板范围判断输出In标签与Range标签用法详解的使用技巧和注意事项,需要的朋友参考一下 ThinkPHP模板的in标签与range标签用于判断某个模板变量是否在某个范围之内。 1.in标签 ThinkPHP的in标签用于某个模板变量是否在某个范围之内,使用格式如下: 使用时,在模块操作(如 In