include(thinkphp常用内置标签)
变量输出使用普通标签就足够了,但是要完成其他的控制、循环和判断功能,就需要借助模板引擎的标签库功能了,系统内置标签库的所有标签无需引入标签库即可直接使用。
XML标签有两种,包括闭合标签和开放标签,一个标签在定义的时候就已经决定了是否是闭合标签还是开放标签,不可混合使用,例如:
闭合标签:<include file="read" />
开放标签:<gt name="name" value="5">value</gt>
内置支持的标签和属性列表如下:
|
标签名 |
作用 |
包含属性 |
|
include |
包含外部模板文件(闭合) |
file |
|
import |
导入资源文件(闭合 包括js css load别名) |
file,href,type,value,basepath |
|
volist |
循环数组数据输出 |
name,id,offset,length,key,mod |
|
foreach |
数组或对象遍历输出 |
name,item,key |
|
for |
For循环数据输出 |
name,from,to,before,step |
|
switch |
分支判断输出 |
name |
|
case |
分支判断输出(必须和switch配套使用) |
value,break |
|
default |
默认情况输出(闭合 必须和switch配套使用) |
无 |
|
compare |
比较输出(包括eq neq lt gt egt elt heq nheq等别名) |
name,value,type |
|
range |
范围判断输出(包括in notin between notbetween别名) |
name,value,type |
|
present |
判断是否赋值 |
name |
|
notpresent |
判断是否尚未赋值 |
name |
|
empty |
判断数据是否为空 |
name |
|
notempty |
判断数据是否不为空 |
name |
|
defined |
判断常量是否定义 |
name |
|
notdefined |
判断常量是否未定义 |
name |
|
define |
常量定义(闭合) |
name,value |
|
assign |
变量赋值(闭合) |
name,value |
|
if |
条件判断输出 |
condition |
|
elseif |
条件判断输出(闭合 必须和if标签配套使用) |
condition |
|
else |
条件不成立输出(闭合 可用于其他标签) |
无 |
|
php |
使用php代码 |
无 |
1.include
可以使用Include标签来包含外部的模板文件,使用方法如下:
|
include标签(包含外部模板文件) |
|
|
闭合 |
闭合标签 |
|
属性 |
file(必须):要包含的模板文件,支持变量 |
示例:
1、 使用完整文件名包含
格式:<include file="完整模板文件名" />
例如:
<include file="./Tpl/default/Public/header.html" />
这种情况下,模板文件名必须包含后缀。使用完整文件名包含的时候,特别要注意文件包含指的是服务器端包含,而不是包含一个URL地址,也就是说file参数的写法是服务器端的路径,如果使用相对路径的话,是基于项目的入口文件位置。
2、包含当前模块的其他操作模板文件
格式:<include file="操作名" />
例如 导入当前模块下面的read操作模版:
<include file="read" />
操作模板无需带后缀。
3、 包含其他模块的操作模板
格式:<include file="模块名:操作名" />
例如,包含Public模块的header操作模版:
<include file="Public:header" />
4、包含其他模板主题的模块操作模板
格式:<include file="主题名:模块名:操作名" />
例如,包含blue主题的User模块的read操作模版:
<include file="blue:User:read" />
5、 用变量控制要导入的模版
格式:<include file="$变量名" />
例如
<include file="$tplName" />
给$tplName赋不同的值就可以包含不同的模板文件,变量的值的用法和上面的用法相同。
无论你使用什么方式包含外部模板,Include标签支持在包含文件的同时传入参数,例如,下面的例子我们在包含header模板的时候传入了title和keywords变量:
<include file="header" title="ThinkPHP框架"keywords="开源WEB开发框架"/>
就可以在包含的header.html文件里面使用var1和var2变量,方法
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>[title]</title>
<meta name="keywords" content="[keywords]" />
</head>
注意:由于模板解析的特点,从入口模板开始解析,如果外部模板有所更改,模板引擎并不会重新编译模板,除非在调试模式下或者缓存已经过期。如果部署模式下修改了包含的外部模板文件后,需要把模块的缓存目录清空,否则无法生效。
include(thinkphp常用内置标签)的更多相关文章
- ThinkPHP中的内置标签
ThinkPHP中的内置标签 1.内置标签分类 闭合标签 <tag></tag> 开放标签 <tag /> 2.包含文件标签 主要功能:实现对文件的包含(类似于re ...
- thinkphp 内置标签volist 控制换行
thinkphp 内置标签volist 控制换行 volist标签通常用于查询数据集(select方法)的结果输出,通常模型的select方法返回的结果是一个二维数组,可以直接使用volist标签进行 ...
- Thinkphp中的内置标签用法
Thinkphp中的内置标签有:Volist,Foreach,For,Switch,比较标签,范围判断标签,IF,Present,Empty,Defined,Assign,Define,标签嵌套,im ...
- JSP--JSP语法--指令--include(动态包含/静态包含)--九大隐式对象--四大域对象--JSP内置标签--JavaBean的动作元素--MVC三层架构
一.JSP 原理:JSP其实就是一个servlet. Servlet负责业务逻辑处理,JSP只负责显示.开发中,JSP中不能有一行JAVA代码 二.JSP语法 1. JSP模板元素:JSP中HT ...
- thinkphp内置标签简单讲解
thinkphp内置标签简单讲解 1.volist循环 name 需要遍历的数据 id 类似于foreach中 value offset 截取数据起始位置 length 截取数据的个数 mod 奇偶数 ...
- ThinkPHP 模版中的内置标签
内置标签就是模版引擎提供的一组可以完成控制.循环和判断功能的类似HTML语法的标签. 一.判断比较: 1.if标签进行条件判断 //if语句的完整格式 <if condition=&qu ...
- JSP内置标签 JSP中JavaBean标签 JSP开发模式 EL和JSTL快速入门
2 JSP内置标签(美化+业务逻辑) 1)为了取代<%%>脚本形式,使用JSP标签/JSP动作,目的:与JSP页面的美化,即JSP面页都是由标签组成,不再有其它的内容 2)JSP内 ...
- thinkphp5内置标签
thinkphp5内置标签 知道内置标签怎么用,查手册的时候好查 却功能的时候在里面找着来用 内置标签一览 内置标签 变量输出使用普通标签就足够了,但是要完成其他的控制.循环和判断功能,就需要借助模板 ...
- Jsp的内置标签和jstl标签
1.内置标签(动作标签) 内置标签不需要再jsp页面导入标签 1).forward:请求的转发,格式如下 <%-- 作用与这个相同 <%request.getRequestDispatch ...
随机推荐
- Qt中通过ui怎么引用不了pushbutton呢? 原来是这样…
在Qt中打开一个项目在做, 突然想到要测量一下其中一个子系统,于是在当前环境下新建了一个项目并用qt designer 简单设计了一下ui,其中添加了pushbutton并命名为OpensourceB ...
- livewriter写Blog 神秘失踪?
现在习惯用livewriter来总结/记录一些知识并发布为Blog 与同行交流,但是今天发生了一个怪事,上午我整理了两篇文档当时就用livewriter发送到了Blog上,但是晚上来看的时候之前发送的 ...
- HoloLens开发手记 - Unity之Persistence 场景保持
Persistence 场景保持是HoloLens全息体验的一个关键特性,当用户离开原场景中时,原场景中全息对象会保持在特定位置,当用户回到原场景时,能够准确还原原场景的全息内容.WorldAncho ...
- IT男的”幸福”生活
IT男的”幸福”生活 IT男的”幸福”生活"续1 IT男的”幸福”生活"续2 IT男的”幸福”生活"续3 IT男的”幸福”生活"续4 IT男的”幸福”生活 ...
- 开源分布式计算引擎 & 开源搜索引擎 Iveely 0.5.0 为大数据而生
Iveely Computing 产生背景 08年的时候,我开始接触搜索引擎,当时遇到的第一个难题就是大数据实时并发处理,当时实验室的机器我们可以随便用,至少二三十台机器,可以,却没有程序可以将这些机 ...
- mustache.js
mustache.js 是一个 Mustache 模板系统的 JavaScript 实现. Mustache 模板语法的逻辑比较简单.它用于HTML,配置文件,源代码等.它的工作方式是通过通过以哈希值 ...
- LINUX下软件包的安装与使用
1.安装RPM包 rpm -ivh 包全名 2.查询某个包是否安装 rpm -q 包名 3.查询已安装的包的信息(主要看版本) rpm -qi 包名 4.查询已安装包的安装位置 rpm -ql 包名 ...
- iOS开发小技巧--设置cell左右有空隙,设置分割线的新思路,重写setFrame:让别人在外界无法修改控件的大小
如图:需要自定义cell
- 在CentOS上安装SQLServer
Install SQL Server on Red Hat Enterprise Linux 参考上面这篇文章即可,需要注意的是内容大于3.25G,然后设置Sa密码的时候需要至少一个大写字母.一个小写 ...
- DOM0,DOM2,DOM3事件,事件基础知识入门
事件是javascript和HTML交互基础, 任何文档或者浏览器窗口发生的交互, 都要通过绑定事件进行交互; 事件有DOM0, DOM2和DOM3的区分(别问我怎么少了一个DOM1, 也没找到DOM ...