ThinkPHP - 模板引擎
- 1、导入css/js文件
- - CSS文件
- <!--<link rel="stylesheet" type="text/css" href="__CSS__/basic.css">-->
- <!--<import type="css" file="Css.basic"/>-->
- <!--<load href="__PUBLIC__/Css/basic.css" />-->
- - JS文件
- <!--<script type="text/javascript" src="__JS__/basic.js"></script>-->
- <!--<import type="js" file="Js.basic" />-->
- <!--<load href="__PUBLIC__/Js/basic.js" />-->
- 2、判断语句
- - if
- · if else
- <if condition="$sex eq '1'">
- 男性
- <else />
- 女性
- </if>
- · if elseif
- <if condition="$age lt '18'">
- 未成年
- <elseif condition="$age eq '18'"/>
- 18岁
- <else />
- 成年
- </if>
- - switch
- <switch name="num">//此时变量不加$
- <case value="1">输出1</case>
- <case value="2">输出2</case>
- <default />默认项
- </switch>
- 3、循环结构
- - volist
- <volist name="list" id="vo">
- {$vo.id}
- {$vo.name}
- </volist>
- - foreach 同volist相似
- <foreach name="list" item="vo">
- {$vo.id}
- {$vo.name}
- </foreach>
- - for
- · 格式
- <for start="开始值" end="结束值" comparison="" step="步进值" name="循环变量名" >
- </for>
- · 例子
- <for start="1" end="100">
- {$i}
- </for>
- · 转换结果
- for ($i=1;$i<100;$i+=1){
- echo $i;
- }
- 4、特殊标签
- - 比较标签
- 系统支持的比较标签以及所表示的含义分别是:
- eq 等于
- neq 不等于
- gt 大于
- egt 大于等于
- lt 小于
- elt 小于等于
- heq 恒等于
- nheq 不恒等于
- --------------------------------
- <eq name="sex" value="1">男</eq>
- <gt name="num" value="6">10>6</gt>
- //这一种更好用
- <compare name="num" value="5" type="GT">10>5</compare>
- - 范围标签
- · in 比较范围
- <!--<in name="id" value="1,2,3">输出内容1</in>-->
- <!--<notin name="id" value="1,2,3">输出内容2 </notin>-->
- <!--<in name="id" value="1,2,3">输出内容1<else/>输出内容2</in>-->
- · between 区间标签
- <!--<between name="id" value="1,10">输出内容2</between>-->
- <!--<notbetween name="id" value="1,10">输出内容1</notbetween>-->
- · Present 标签
- present标签来判断模板变量是否已经赋值。
- · Empty
- empty标签判断模板变量是否为空。
- · Define 标签
- define标签进行常量定义。
- · Defined 标签
- defined标签判断常量是否已经有定义。
- · Assign 标签
- assign标签进行赋值。
- 5、其他标签
- - PHP标签
- <?php echo 'Hello,world!'; ?>
- //建议使用这种
- <php>echo 'Hello,world!';</php>
- - 修改左右定界符
- 在配置文件中
- 'TMPL_L_DELIM'=>'<{',
- 'TMPL_R_DELIM'=>'}>',
- 一、模板包含
- - header.html
- <!DOCTYPE html>
- <html>
- <head>
- <meta http-equiv="Content-Type" contect="text/html";charset=utf-8">
- <meta name="keywords" content="[keywords]">
- <meta name="description" content="[description]">
- <title>[title]</title>
- <load href="__PUBLIC__/Css/basic.css" />
- </head>
- <body>
- - footer.html
- <load href="__PUBLIC__/Js/basic.js" />
- </body>
- </html>
- - index.html
- <!-- 包含头文件 -->
- <include file="Public:header" title="ThinkPHP框架" keywords="开源WEB开发框架" description="这里是描述内容" />
- <div>
- <p>nriotng</p>
- </div>
- <!-- 包含尾部文件 -->
- <include file="Public:footer" />
- 二、模板渲染
- 1、自动开启模板渲染 设置配置文件
- 'LAYOUT_ON'=>true,//开启模板渲染
- 准备一个模板渲染页面,在页面中使用{__CONTENT__}接受具体模板页面的内容
- 如果在摸一个具体模板中不希望使用渲染模板,可以在页首添加{__NOCONTENT__}
- 2、不开启自动模板渲染可以在每一个具体页面的页首添加
- 前提是,已经有一个主要文件了。
- <layout name='layout'/>
ThinkPHP - 模板引擎的更多相关文章
- thinkphp模板引擎
$this->assing('result'.$result) html页面代码 <foreach name='result item='vo'> <div>{$vo[' ...
- thinkPHP模板引擎案例
1.if <if condition="$vo.business eq LS"> 零售 <elseif condition="$vo.business ...
- ThinkPHP 模板判断输出--Switch 标签
ThinkPHP 模板引擎支持 switch 判断,根据不同情况输出不同的值,格式如下:<switch name="变量名" > <case value=& ...
- 如何让ThinkPHP的模板引擎达到最佳效率
默认情况下ThinkPHP框架系统默认使用的模板引擎是内置模板引擎.内置模板引擎支持模板文件中采用php原生态代码和模板标签的混合使用.ThinkPHP官方开发文档说,这种默认的内置模板引擎的性能是高 ...
- ThinkPHP使用smarty模板引擎的方法
ThinkPHP支持多种php模板引擎,可以根据个人需要加以配置.下面我们以Smarty模板引擎为例,给大家说说具体的操作流程! 首先去Smarty官网上下载一个Smarty.本站下载地址:http: ...
- ThinkPHP模板中如何操作session,以及如果session中保存的是数组的情况
在ThinkPHP的模板中操作session时,可以参考ThinkPHP参考文档中的“模板—>系统变量”部分,在默认模板引擎中,语法如下: {$Think.session.user} //输出s ...
- thinkphp模板中foreach循环没数据的错误解决
从控制器方法中$this->assign();函数将值传递给html模板 但是模板不显示数据,直接出来的是代码,效果就和html中写了php代码不能解析一样. 原来是我将thinkphp框架的引 ...
- thinkphp 模板调用数据
我自己写了个简单的模板是这样的 <!DOCTYPE html> <html> <head> <style> div { width:230px; hei ...
- ThinkPHP模板(一)
如何关闭ThinkPHP的模板缓存 ThinkPHP的模板缓存是无奈关闭的,因为内置的模板引擎是一个编译型的模板引擎,必须经过编译后生成一个可执行的缓存文件才能被执行.但是可以设置缓存的有效期,例如设 ...
随机推荐
- 关于已经安装python为何还要安装python-dev
linux发行版通常会把类库的头文件和相关的pkg-config分拆成一个单独的xxx-dev(el)包. 以python为例, 以下情况你是需要python-dev的 你需要自己安装一个源外的pyt ...
- hihocoder #1260 : String Problem I
题目链接 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 我们有一个字符串集合S,其中有N个两两不同的字符串. 还有M个询问,每个询问给出一个字符串w,求有多少S中的 ...
- 一张图解释---Java多态
1.向上转型:编译器自动进行,不需要声明 Snowboard s = new Snowboard (); Object o = s; (相当于指向Snowboard的内部Object实例,所有类都继承 ...
- IOS 特定于设备的开发:UIDevice
UIDevice类展示了一些关键的特定于设备的属性,包括使用的iPhone ,Ipad或iPod Touch型号.设备名称.以及OS名称和版本. 他是一种一站式解决方案,用于提取出某些系统详细信息.每 ...
- 项目管理软件伙伴https://www.huobanyun.cn/
现在项目管理软件市面上很多,但能够完全适合每家公司需求的比较难找,因为众口难调,每家公司都有自己的特殊情况,所以,建议考虑下有比较齐全的基础功能的标准化软件产品,同时又在项目管理开发能力上比较突出. ...
- Qt官方开发环境生成的exe发布方式--使用windeployqt(windeployqt是单独的程序,放在低版本qt4目录下也可以运行的)
Qt 官方开发环境使用的动态链接库方式,在发布生成的exe程序时,需要复制一大堆 dll,如果自己去复制dll,很可能丢三落四,导致exe在别的电脑里无法正常运行.因此 Qt 官方开发环境里自带了一个 ...
- Mac OS X Mavericks or Yosemite 安装Nginx、PHP、Mysql、phpMyAdmin
翻译:http://blog.frd.mn/install-nginx-php-fpm-mysql-and-phpmyadmin-on-os-x-mavericks-using-homebrew/ 最 ...
- [置顶] Asp.Net底层原理(一、浏览器和服务器的交互原理)
…… 一.浏览器和服务器的交互原理 二.写自己的"迷你"Asp.net框架 三.Asp.Net的请求与响应过程 1.在此之前,首先简单的模拟一下我们去请求一个网址的时候,浏览器和服 ...
- UVA 11754 - Code Feat(数论)
UVA 11754 - Code Feat 题目链接 题意:给定一个c个x, y1,y2,y3..yk形式,前s小的答案满足s % x在集合y1, y2, y3 ... yk中 思路:LRJ大白例题, ...
- cocos2d基础入门
HelloCpp中Classes目录下放开发者自己的类: win32:平台相关,coco2d已默认创建:coco2d-x目录下,samples/cpp/HelloCpp/(工程根目录)图片放置位置:根 ...