在模板中输出变量的方法很简单,例如,在控制器中我们给模板变量赋值:
$name = 'ThinkPHP';
$this->assign('name',$name);
$this->display();
$name = 'ThinkPHP';
$this->assign('name',$name);
$this->display();
然后就可以在模板中使用:
Hello,{$name}!
Hello,{$name}!
模板编译后的结果就是:
Hello,<?php echo($name);?>!
Hello,<?php echo($name);?>!
这样,运行的时候就会在模板中显示:
Hello,ThinkPHP!
Hello,ThinkPHP!
注意模板标签的 和 之间不能有任何的空格,否则标签无效。所以,下面的标签
{
{
$
$
Hello,{ $name}!
Hello,{ $name}!
将不会正常输出name变量,而是直接保持不变输出:
Hello,{ $name}!
Hello,{ $name}!
普通标签默认开始标记是 { ,结束标记是 } 。也可以通过设置 和 进行更改。例如,我们在项目配置文件中定义:
![Image](https://box.kancloud.cn/bc01b566468ea45b68732bfcac5911eb_31x39.png)
![Image](https://box.kancloud.cn/bc01b566468ea45b68732bfcac5911eb_31x39.png)
![Image](https://box.kancloud.cn/c677979ebe0e17cd5f3008af050bfe40_30x39.png)
![Image](https://box.kancloud.cn/c677979ebe0e17cd5f3008af050bfe40_30x39.png)
TMPL\_L\_DELIM
TMPL\_L\_DELIM
TMPL\_R\_DELIM
TMPL\_R\_DELIM
'TMPL\_L\_DELIM'=>'<{', 'TMPL\_R\_DELIM'=>'}>',
'TMPL\_L\_DELIM'=>'<{', 'TMPL\_R\_DELIM'=>'}>',
[那么,上面的](http://www.kancloud.cn/)变量输出标签就应该改成:
Hello,<{$name}>!
Hello,<{$name}>!
后面的内容我们都以默认的标签定义来说明。
模板标签的变量输出根据变量类型有所区别,刚才我们输出的是字符串变量,如果是数组变量,
$data\['name'\] = 'ThinkPHP';
$data\['email'\] = 'thinkphp@qq.com';
$this->assign('data',$data);
$data\['name'\] = 'ThinkPHP';
$data\['email'\] = 'thinkphp@qq.com';
$this->assign('data',$data);
那么,在模板中我们可以用下面的方式输出:
Name:{$data.name} Email:{$data.email}
Name:{$data.name} Email:{$data.email}
或者用下面的方式也是有效:
Name:{$data\['name'\]} Email:{$data\['email'\]}
Name:{$data\['name'\]} Email:{$data\['email'\]}
当我们要输出多维数组的时候,往往要采用后面一种方式。
如果data变量是一个对象(并且包含有name和email两个属性),那么可以用下面的方式输出:
Name:{$data:name} Email:{$data:email}
Name:{$data:name} Email:{$data:email}
或者
Name:{$data->name} Email:{$data->email}
Name:{$data->name} Email:{$data->email}
<div class="view-foot">
<div class="article-jump">
<span style="display: block;" class="jump-up">上一篇:<a href="/manual/thinkphp
/1793" data-articleid="1793">模板</a></span>
<span class="jump-down">下一篇:<a href="/manual/thinkphp/1795" data-articlei
d="1795">系统变量</a></span>
</div>
<a class="view-backtop"><i class="icon-arrow-up2"></i></a>
</div>
</div>
<div class="view-foot">
<div class="article-jump">
<span style="display: block;" class="jump-up">上一篇:<a href="/manual/thinkphp
/1793" data-articleid="1793">模板</a></span>
<span class="jump-down">下一篇:<a href="/manual/thinkphp/1795" data-articlei
d="1795">系统变量</a></span>
</div>
<a class="view-backtop"><i class="icon-arrow-up2"></i></a>
</div>
</div>
- ThinkPHP模板
- 变量输出
- 系统变量
- 系统变量输出
- 常量输出
- 配置输出
- 语言变量
- 使用函数
- 默认值输出
- 使用运算符
- 标签库
- 导入标签库
- 内置标签
- 标签库预加载
- 模板继承
- 修改定界符
- 普通标签
- XML标签
- 三元运算符
- 包含文件
- 使用模版表达式
- 使用模版文件
- 传入参数
- 内置标签
- Volist标签
- Foreach标签
- For标签
- Switch标签
- 比较标签
- 范围判断标签
- IN和NOTIN
- BETWEEN 和 NOTBETWEEN
- RANGE
- IF标签
- Present标签
- Empty标签
- Defined标签
- Assign标签
- Define标签
- 标签嵌套
- import标签
- 使用PHP代码
- 使用php标签
- 使用原生php代码
- 原样输出
- 模板注释
- 单行注释
- 多行注释
- 模板布局
- 第一种方式:全局配置方式
- 第二种方式:模板标签方式
- 第三种方式:使用layout控制模板布局
- 模板替换
- 调用导航
- 调用栏目信息
- 根据栏目Id获取栏目信息
- 首页&封面调用信息列表
- 调用新闻列表
- 当前位置
- 当前位置
- 列表页分页
- 热门信息
- 获取热门信息
- 上一篇&下一篇
- YNCMS函数
- YNCMS插件开发
- 开始开发