Maison >développement back-end >tutoriel php >ThinkPHP内置模板引擎的使用方法总结_PHP教程
ThinkPHP内置的模板引擎是一个自主创新的XML编译性模板引擎,下面通过一个案例分享一些ThinkPHP内置的模板引擎常用的模板标签的用法,包括变量输出、循环、判断、比较等,这些都是比较基础的用法,无法包括ThinkPHP内置模板引擎的全部标签和特性。
(1)下面是控制器 IndexAction 类的源码
<?php class IndexAction extends Action{ public function index() { $_SESSION['name'] = 'ThnkPHP Session'; $vo = array('id'=>1,'name'=>'ThinkPHP','email'=>'liu21st@gmail.com'); $this->assign('vo',$vo); $obj = (object)$vo; $this->assign('obj',$obj); $this->assign('array',array(5,260,13,7,40,50,2,1)); $this->assign('num1',6); $this->assign('num2',2); $this->assign('num',6); $this->display(); } } ?>
(2)以下演示的是上面控制器赋值到模板中的一些变量,常量以及数组的一些基础性用法
普遍变量输出
num1:{$num1}
对象输出
id:{$obj:id}
name:{$obj:name}
数组输出
id:{$vo['id']}
name:{$vo['name']}
自动判断数组和对象输出
id:{$vo.id}
name:{$vo.name}
系统常量输出(系统常量可以不用在控制器中使用 assign 赋值)
{$Think.now|date='Y-m-d H:i:s',###}
{$Think.server.PHP_SELF}
{$Think.session.name}
对变量使用函数(这里可以是内置函数或者自定义函数)
{$vo.name|strtolower|ucwords}
Foreach 输出
{$key}:{$item}
下面这个例子使用了循环标签、Switch标签、比较标签
[{$i}]
{$val}大于15
{$val}小于10
输出结果类似为:
[1] 奇数行 5小于10 长度为1
[2] 偶数行 260大于5 260大于15 长度为3
[3] 奇数行 13大于5 长度为2
[4] 偶数行 7大于5 7小于10 长度为1
[5] 奇数行 40大于5 40大于15 长度为2
[6] 偶数行 50大于5 50大于15 长度为2
[7] 奇数行 2小于10 长度为1
[8] 偶数行 1小于10 长度为1
ThinkPHP内置的模板引擎比较标签
输出结果类似为:
大于3
小于3
条件判断
{$num}大于5
{$num}大于3
其他{$num}
输出结果类似为:
6大于5