thinkphp 模板
人生如初见_张默
这个作者很懒,什么都没留下…
展开
-
Thinkphp 模板/变量输出
变量输出在模板中输出变量的方法很简单,例如,在控制器中我们给模板变量赋值:$name = 'ThinkPHP';$this->assign('name',$name);$this->display();然后就可以在模板中使用:Hello,{$name}!模板编译后的结果就是:Hello,<?php echo($name);?>! ...转载 2018-07-22 10:59:25 · 2958 阅读 · 7 评论 -
Thinkphp 模板/内置标签/IF标签
IF标签用法示例:<if condition="($name eq 1) OR ($name gt 100) "> value1<elseif condition="$name eq 2"/>value2<else /> value3</if>在condition属性中可以支持eq等判断表达式,同上面的比较标签,但是不支持带有”...转载 2018-09-18 09:44:15 · 2465 阅读 · 0 评论 -
Thinkphp 模板/内置标签/Present标签
Present标签present标签用于判断某个变量是否已经定义,用法:<present name="name">name已经赋值</present>如果判断没有赋值,可以使用:<notpresent name="name">name还没有赋值</notpresent>可以把上面两个标签合并成为:<pr转载 2018-09-18 09:44:05 · 1013 阅读 · 0 评论 -
Thinkphp 模板/内置标签/Empty标签
Empty标签empty标签用于判断某个变量是否为空,用法:<empty name="name">name为空值</empty>如果判断没有赋值,可以使用:<notempty name="name">name不为空</notempty>可以把上面两个标签合并成为:<empty name="na转载 2018-09-18 09:43:57 · 2860 阅读 · 3 评论 -
Thinkphp 模板/内置标签/Defined标签
Defined标签DEFINED标签用于判断某个常量是否有定义,用法如下:<defined name="NAME">NAME常量已经定义</defined>name属性的值要注意严格大小写如果判断没有被定义,可以使用:<notdefined name="NAME">NAME常量未定义</notdefined>...转载 2018-09-18 09:43:48 · 203 阅读 · 0 评论 -
Thinkphp 模板/内置标签/Assign标签
Assign标签ASSIGN标签用于在模板文件中赋值变量,用法如下:<assign name="var" value="123" />在运行模板的时候,赋值了一个var的变量,值是123。name属性支持系统变量,例如:<assign name="Think.get.id" value="123" />表示在模板中给$_GET['id'] 赋转载 2018-09-18 09:43:40 · 1849 阅读 · 1 评论 -
Thinkphp 模板/内置标签/Define标签
Define标签DEFINE标签用于中模板中定义常量,用法如下:<define name="MY_DEFINE_NAME" value="3" />在运行模板的时候,就会定义一个MY_DEFINE_NAME的常量。value属性可以支持变量(包括系统变量),例如:<define name="MY_DEFINE_NAME" value="$name" /&转载 2018-09-18 09:43:32 · 701 阅读 · 0 评论 -
Thinkphp 模板/内置标签/标签嵌套
标签嵌套模板引擎支持标签的多层嵌套功能,可以对标签库的标签指定可以嵌套。系统内置的标签中,volist、switch、if、elseif、else、foreach、compare(包括所有的比较标签)、(not)present、(not)empty、(not)defined等标签都可以嵌套使用。例如:<volist name="list" id="vo"> <...转载 2018-09-16 21:21:26 · 918 阅读 · 0 评论 -
Thinkphp 模板/内置标签/import标签
import标签传统方式的导入外部JS和CSS文件的方法是直接在模板文件使用:<script type='text/javascript' src='/Public/Js/Util/Array.js'><link rel="stylesheet" type="text/css" href="/App/Tpl/default/Public/css/style.css" ...转载 2018-09-16 21:21:06 · 217 阅读 · 0 评论 -
Thinkphp 模板/内置标签/使用PHP代码
使用PHP代码Php代码可以和标签在模板文件中混合使用,可以在模板文件里面书写任意的PHP语句代码 ,包括下面两种方式:使用php标签例如:<php>echo 'Hello,world!';</php>我们建议需要使用PHP代码的时候尽量采用php标签,因为原生的PHP语法可能会被配置禁用而导致解析错误。使用原生php代码<?php ...转载 2018-09-16 21:20:56 · 521 阅读 · 0 评论 -
Thinkphp 模板/原样输出
原样输出可以使用literal标签来防止模板标签被解析,例如:<literal> <if condition="$name eq 1 "> value1 <elseif condition="$name eq 2"/>value2 <else /> value3 </if>&am转载 2018-09-16 21:20:35 · 1297 阅读 · 0 评论 -
Thinkphp 模板/模板注释
模板注释模板支持注释功能,该注释文字在最终页面不会显示,仅供模板制作人员参考和识别。单行注释格式:{/* 注释内容 */ } 或 {// 注释内容 } 例如:{// 这是模板注释内容 }注意{和注释标记之间不能有空格。多行注释支持多行注释,例如:{/* 这是模板注释内容*/ }模板注释支持多行,模板注释在生成编译缓存文件后会自动删除,这...转载 2018-09-16 21:20:26 · 2093 阅读 · 0 评论 -
Thinkphp 模板/模板布局
模板布局ThinkPHP的模板引擎内置了布局模板功能支持,可以方便的实现模板布局以及布局嵌套功能。有三种布局模板的支持方式:第一种方式:全局配置方式这种方式仅需在项目配置文件中添加相关的布局模板配置,就可以简单实现模板布局功能,比较适用于全站使用相同布局的情况,需要配置开启LAYOUT_ON 参数(默认不开启),并且设置布局入口文件名LAYOUT_NAME(默认为layout)。...转载 2018-09-16 21:20:15 · 517 阅读 · 0 评论 -
Thinkphp 模板/内置标签/范围判断标签
范围判断标签范围判断标签包括in notin between notbetween四个标签,都用于判断变量是否中某个范围。IN和NOTIN用法: 假设我们中控制器中给id赋值为1:$id = 1;$this->assign('id',$id);我们可以使用in标签来判断模板变量是否在某个范围内,例如:<in name="id" value="1,2...转载 2018-09-18 09:44:23 · 653 阅读 · 0 评论 -
Thinkphp 模板/内置标签/Switch标签
Switch标签用法:<switch name="变量" ><case value="值1" break="0或1">输出内容1</case><case value="值2">输出内容2</case><default />默认情况<转载 2018-09-18 09:44:43 · 2369 阅读 · 0 评论 -
Thinkphp 模板/系统变量
系统变量系统变量输出普通的模板变量需要首先赋值后才能在模板中输出,但是系统变量则不需要,可以直接在模板中输出,系统变量的输出通常以**{$Think** 打头,例如:{$Think.server.script_name} // 输出$_SERVER['SCRIPT_NAME']变量{$Think.session.user_id} // 输出$_SESSION['user_id']变...转载 2018-07-22 11:01:39 · 185 阅读 · 0 评论 -
Thinkphp 模板/使用函数
使用函数对模板输出变量使用函数,可以使用:{$data.name|md5} 编译后的结果是:<?php echo (md5($data['name'])); ?> 如果函数有多个参数需要调用,则使用:{$create_time|date="y-m-d",###}表示date函数传入两个参数,每个参数用逗号分割,这里第一个参数是y-m-d,第二...转载 2018-07-22 11:05:20 · 1858 阅读 · 0 评论 -
Thinkphp 模板/默认值输出
默认值输出我们可以给变量输出提供默认值,例如:{$user.nickname|default="这家伙很懒,什么也没留下"}对系统变量依然可以支持默认值输出,例如:{$Think.get.name|default="名称为空"}默认值和函数可以同时使用,例如:{$Think.get.name|getName|default="名称为空"} {$Think.g...转载 2018-07-22 11:07:10 · 3491 阅读 · 0 评论 -
Thinkphp 模板/使用运算符
使用运算符我们可以对模板输出使用运算符,包括对“+”“- ” “*” “/”和“%”的支持。例如:运算符 使用示例 + {$a+$b} - {$a-$b} * {$a*$b} / {$a/$b} % {$a%$b} ++ {$a++} 或 {++$a} -- {$a--} 或 {--$a} 综合运算 ...转载 2018-07-22 11:09:06 · 1954 阅读 · 0 评论 -
Thinkphp 模板/标签库
标签库内置的模板引擎除了支持普通变量的输出之外,更强大的地方在于标签库功能。标签库类似于Java的Struts中的JSP标签库,每一个标签库是一个独立的标签库文件,标签库中的每一个标签完成某个功能,采用XML标签方式(包括开放标签和闭合标签)。标签库分为内置和扩展标签库,内置标签库是Cx标签库。导入标签库使用taglib标签导入当前模板中需要使用的标签库,例如:<t...转载 2018-07-22 11:14:41 · 313 阅读 · 0 评论 -
Thinkphp 模板/模板继承
模板继承模板继承,就好比类的继承一样,模板也可以定义一个基础模板(或者是布局),并且其中定义相关的区块(block),然后继承(extend)该基础模板的子模板中就可以对基础模板中定义的区块进行重载。因此,模板继承的优势其实是设计基础模板中的区块(block)和子模板中替换这些区块。每个区块由<block></block>标签组成。 下面就是基础模板中的一个典型...转载 2018-07-22 11:22:16 · 1184 阅读 · 1 评论 -
Thinkphp 模板/修改定界符
修改定界符模板文件可以包含普通模板标签和XML模板标签,标签的定界符都可以重新配置。普通标签内置模板引擎的普通模板标签默认以{ 和 } 作为开始和结束标识,并且在开始标记紧跟标签的定义,如果之间有空格或者换行则被视为非模板标签直接输出。 例如:{$name} 、{$vo.name} 、{$vo['name']|strtoupper} 都属于普通模板标签。要更改普遍模板的起始标签和结...转载 2018-07-22 11:25:14 · 761 阅读 · 0 评论 -
Thinkphp 模板/三元运算
三元运算模板可以支持三元运算符,例如:{$status?'正常':'错误'}{$info['status']?$info['msg']:$info['error']}注意:三元运算符中暂时不支持点语法。转载 2018-09-20 14:03:08 · 1392 阅读 · 0 评论 -
Thinkphp 模板/包含文件
包含文件在当前模版文件中包含其他的模版文件使用include标签,标签用法:<include file='模版表达式或者模版文件1,模版表达式或者模版文件2,...' /> 使用模版表达式模版表达式的定义规则为:模块@主题/控制器/操作例如:<include file="Public/header" /> // 包含头部模版header&...转载 2018-09-20 14:02:57 · 2366 阅读 · 0 评论 -
Thinkphp 模板/内置标签/Volist标签
Volist标签volist标签通常用于查询数据集(select方法)的结果输出,通常模型的select方法返回的结果是一个二维数组,可以直接使用volist标签进行输出。 在控制器中首先对模版赋值:$User = M('User');$list = $User->limit(10)->select();$this->assign('list',$list);...转载 2018-09-20 14:02:36 · 647 阅读 · 0 评论 -
Thinkphp 模板/内置标签/Foreach标签
Foreach标签foreach标签类似与volist标签,只是更加简单,没有太多额外的属性,例如:<foreach name="list" item="vo"> {$vo.id}:{$vo.name}</foreach>name表示数据源 item表示循环变量。可以输出索引,如下:<foreach name="list" item...转载 2018-09-20 14:02:25 · 4273 阅读 · 0 评论 -
Thinkphp 模板/内置标签/For标签
For标签用法:<for start="开始值" end="结束值" comparison="" step="步进值" name="循环变量名" ></for>开始值、结束值、步进值和循环变量都可以支持变量,开始值和结束值是必须,其他是可选。comparison 的默认值是lt;name的默认值是i,步进值的默认值是1,举例如下:转载 2018-09-20 14:02:15 · 3499 阅读 · 0 评论 -
Thinkphp 模板/模板替换
模板替换在进行模板渲染之前,系统还会对读取的模板内容进行一些特殊字符串替换操作,也就是实现了模板输出的替换和过滤。该替换操作仅针对内置的模版引擎。这个机制可以使得模板文件的定义更加方便,默认的替换规则有:__ROOT__: 会替换成当前网站的地址(不含域名) __APP__: 会替换成当前应用的URL地址 (不含域名)__MODULE__:会替换成当前模块的URL地址 (不含域名...转载 2018-09-16 21:20:07 · 649 阅读 · 0 评论