您的位置:首页 > 编程语言 > PHP开发

thinkphp常用内置标签

2015-05-09 14:53 162 查看


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>
 
注意:由于模板解析的特点,从入口模板开始解析,如果外部模板有所更改,模板引擎并不会重新编译模板,除非在调试模式下或者缓存已经过期。如果部署模式下修改了包含的外部模板文件后,需要把模块的缓存目录清空,否则无法生效。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: