php 自定义模板标签,
1.如果标签作出条件判断。
//if语句的完整格式
If condition=$user eq 蜡笔小新
小新
Elseif condition=$user eq 黑崎一护 /
草莓
else /
错误
/如果
//PHP函数可以用在condition条件中。
If condition= MB _ substr ($ user,0,3, UTF-8) EQ 蜡笔小
//在条件条件中使用point语法,智能判断数组或对象。
If condition=$data.user eq 蜡笔小新
//在条件条件中使用冒号语法,直接使用对象。
If condition=$data:user eq 蜡笔小新
//条件条件中使用了系统变量。
If condition=$Think.get.user eq 蜡笔小新
2.开关标签
//name的值和IF语句一样,可以是变量、数组、对象、函数或系统变量。
开关名称=用户(变量不需要$符号)
Value=蜡笔小新小新/case
Value=黑崎一护一护/箱
默认/错误
/开关
3.比较标签
标签含义
Eq或equal等于
Neq或notequal不等于
Gt大于
Egt大于或等于
它小于
Elt小于或等于
Heq等于
Nheq不等于
//控制器变量$user=蜡笔肖鑫,输出肖鑫。
Eq= user value=蜡笔小新 shinchan /eq(变量不需要$符号)
PS:比较标签还提供了统一的标签比较,比较类型通过type属性完成。
//比较统一方法
compare type= eq name= user value=蜡笔小新 shinchan /compare(变量不需要$符号)
4.范围判断标签
PHP提供了一组范围判断标签:in、notin、between和notbetween,都是用来判断一个变量是否在某个范围内。
//如果id为1,2,3,则输出任意一个
In= id value= 1,2,3 id在/in范围内
//在标记中,支持else
in name=idvalue=1,2,3
Id在范围内
else/
Id超出范围。
/英寸
//notin标签,正好相反
Not name= id value= 1,2,3 ID超出范围/notin
//标记之间,从哪里到哪里的范围
Between name=idvalue=1,10 id在/between范围内
//notbetween标签,从where到where的范围
Not between name= id value= 1,10 ID超出范围/notbetween
Ps://range标签,可以统一in、notin、between和notbetween。
id中的name= id value= 1,2,3 type=在范围/范围内
Ps://name值可以是系统变量
In= think.get.id value= 1,2,3 ID在/in范围内(变量不需要$符号)
//value value可以是变量,也可以是系统变量。
in= ID value= $ think . get . range ID在范围/in内(变量需要$符号)
5.判断变量的标签。
//判断变量是否已经赋值,然后输出。空字符串和0也被赋值。
Present name=user 用户已被分配/在场
//判断变量是否已经赋值,未创建或者赋值为null,这些都是没有值的。
Notpresent name=user 用户还没有值/notpresent
//确定变量是否已经赋值,并组合
当前名称=用户
用户已被分配
else /
未分配用户。
/目前
//确定变量是否已经赋值,以及系统变量
present name= think . get . user $ _ get[ user ]已被分配/出席
底层的PS:present标记调用isset函数。
//判断变量是否为空,如果为空则输出(null、0、空字符串都不赋值)
空名称=用户用户为空
//判断变量是否为空,如果不是,则输出。
Notempty name=user 用户不为空/notempty
//确定变量是否为空,并组合
空名称=“用户”
用户为空。
else /
用户不为空。
/空的
//判断变量是否为空,系统变量
empty name= think . get . user $ _ get[ user ]为null/空。
//判断常量是否定义,输出是否定义。
PS:empty标签底部调用empty函数。
Definedname=APP_PATH APP_PATH常量已定义/已定义
//确定是否定义了常数,但没有定义输出。
未定义name= app _ path app _ path常量未定义/未定义
//确定常量是否定义和组合。
定义的名称=应用程序路径
APP_PATH常量已经定义。
else /
APP_PATH常量未定义
/已定义
第二,遍历循环
1.列表标签
Volist标签:通常用于查询数据集的结果输出,select()方法返回一个two。
维度,可以使用volist标签直接输出。
保险商实验所
volist name=dataid=arr
Li { $ arr . id }-{ $ arr . user }-{ $ arr . mail }/Li
/volist
/ul
PS:这里name=data 中的数据是控制器为模板定义的数据变量,应该是对应的;这里
id=arr 中的arr是将遍历循环的数组名,可以自定义。
//从哪一行开始偏移,起始值为0,长度是多少行?
volistname= data id= arr offset= 5 length= 10
Li { $ arr . id }-{ $ arr . user }-{ $ arr . mail }/Li
/volist
//mod求当前余数,将当前索引除以2和1,输出偶数。
volistname=dataid=vomod=2
eq name=modvalue=1
Li { $ VO . id }-{ $ VO . user }-{ $ VO . mail }/Li
/eq
/volist
//如果没有数据,则用空填充
volistname= data id= VO empty= no data
Li { $ VO . id }-{ $ VO . user }-{ $ VO . mail }/Li
/volist
//empty属性不支持HTML直接输入,但是可以通过变量输出。
$this- assign(empty , span没有数据/span );
volistname= data id= VO empty= $ empty
//通过键输出循环遍历的变量
volistname=dataid=vokey=k
李{ $ k }-{ $ VO . id }-{ $ VO . user }-{ $ VO . mail }/李
/volist
//如果不指定k,也可以用I变量输出
李{ $ I }-{ $ VO . id }-{ $ VO . user }-{ $ VO . mail }/李
//key变量,可以直接输出索引值,从0开始
李{ $ key }-{ $ VO . id }-{ $ VO . user }-{ $ VO . mail }/李
2.foreach标签
Foreach标记类似于Volist标记,只是Foreach标记更简单,没有其他属性。
//仅支持key属性,但支持{$key}变量
保险商实验所
foreach name=dataitem=vo
ul {$vo.id} - {$vo.user} /ul
/foreach
/ul
3.对于标签
For标签只是一个圆形标签。
//从1到99循环
forstart=1end=100
{$i} br/
/for
除了必需的start和end值之外,还有三个可选值。比较大于或小于,默认值为lt。
( ) ;Name是循环变量名,默认值是I;Step是步长值,默认值为1。
//完成表单
for start= 1 end= 100 comparison= lt step= 2 name= k
{$i} br/
/for
三。其他标签
ThinkPHP模板中还有一些其他的标签。
1.//在模板中定义变量。该值可以是变量($user)或系统变量($Think.get.user)
assignname=varvalue=123 /
{$var}
//在模板中定义常数。该值可以是变量($user)或系统变量($Think.get.user)
define NAME= MY _ NAME value= Lee /
{$Think.const.MY_NAME}
2.import标签可以智能导入js和css文件。
//一般介绍方法
script type= text/JavaScript src= _ _ PUBLIC _ _/js/index . js /script
link rel= style sheet type= text/CSS
href= _ _ PUBLIC _ _/CSS/index . CSS /
//用import导入,js和css是目录
import type= js file= js . index /
导入类型=css 文件=css.index /
//使用import导入,使用basepath修改默认路径
import type= js file= js . index basepath=。/Common /
3.load标签可以智能加载js和css文件。
//使用load来加载
load href= _ _ PUBLIC _ _/js/index . js /
load href= _ _ PUBLIC _ _/CSS/index . CSS /
系统还提供特殊的js和css标签用于加载。
4.//使用特殊标签
jshref= _ _ PUBLIC _ _/js/index . js /
CSS href= _ _ PUBLIC _ _/CSS/index . CSS /
5.PHP代码可以和标签混合在模板文件中,任何PHP语句都可以写在模板文件中。
代码。
//使用php标签
服务器端编程语言(Professional Hypertext Preprocessor的缩写)
$ a=1;
$ b=2;
echo $ a $ b;
/php
//使用php语法
?服务器端编程语言(Professional Hypertext Preprocessor的缩写)
$ a=1;
$ b=2;
echo $ a $ b;
?
6.如果您想按原样输出标签及其内容,可以使用文字标签。
//按原样输出
逐字的
php echo 123/php
/文字