- [/code]
- [size=5][b]输出标签:变量输出[/b][/size]
- 变量输出是最常用的方式,输出变量就需要注册变量,先来看下如何在controller中注册一个变量输出到模板
- [code]class IndexController extends WindController {
- public function run() {
- $this->setOutput('模板标签教程', 'title') ; //注册变量title,其值为:'模板标签教程'
- $var = array();
- $var['team'] = 'windFramework';
- $var['time'] = date('Y-m-d');
- $this->setOutput($var); //批量注册变量,分别注册了变量$team和$time在模板中
- $var1 = array();
- $var1['name'] = 'WindFramework';
- $var1['info'] = '如风般温和,如风般疯狂,如风般清爽,如风般迅速';
- $this->setOutput($var1, 'info');//注册一个数组变量$info到模板中
- }
- }
复制代码 输出的标签支持可以如下:
- *{$title} //输出一个变量
- * //输出一个变量
- *
- *
复制代码 以上的注册的变量可以在输出模板中如下方式输出:
- {$title}
- {$team}|{$time}
- {$info['name']}:{$info['info']}
-
复制代码
访问数组的方式也和正常的模板中访问的方式一致。
逻辑段标签:php代码输出
对于在模板中嵌入php的代码,Wind模板中提供两种输出标签:
- 第一种大段输出代码:
- $value) { ->
- {$key}:{$value}
- 第二种大段输出代码:
- {$key}:{$value}
复制代码 因为模板支持原生态的输出方式,所以也可以采用原生态的方式来嵌入php代码
Action请求: forwardAction
action标签,允许用户在模板中请求其他的action片段
- [/code]
- 将会去请求同模块下的Index中的otherAction。将该action输出的模板片段嵌入到标签位置。
- [size=5][b]模板片段嵌入: template[/b][/size]
- [code]
复制代码
将会引入当前模板目录下的index_other模板片段,该模板后缀为htm,该被引入的模板将会共享当前模板中的变量信息。
分页标签: page
- [/code]解析:
- [code]*tpl: 分页的模板输出
- *total: 总页数
- *page: 当前页数
- *per: 每页显示条数
- *count: 总条数
- *url: 翻页的url
复制代码 在index_page中可以使用如下变量分别访问传递过去的参数
- class IndexController extends WindController {
- public function run() {
- $this->setOutput('模板标签教程', 'title') ; //注册变量title,其值为:'模板标签教程'
- $var = array();
- $var['team'] = 'windFramework';
- $var['time'] = date('Y-m-d');
- $this->setOutput($var); //批量注册变量,分别注册了变量$team和$time在模板中
- $var1 = array();
- $var1['name'] = 'WindFramework';
- $var1['info'] = '如风般温和,如风般疯狂,如风般清爽,如风般迅速';
- $this->setOutput($var1, 'info');//注册一个数组变量$info到模板中
- }
- }0
复制代码 场景回放:
在index_run.htm模板中使用标签 - [/code]
- 模板index_page.htm中设置输出样式如下:
- 分页标签测试:在分页模板中调用的如下变量
- 共{$page}/{$total}页
- 共条数:$count
- 跳转的url: $url
- [size=5][b]跨action模板访问变量: {@}[/b][/size]
- 在模板中调用action将会导致一个问题,就是模板中的变量不能共享。为了解决这个问题,让被调用的action中能访问主模板中的变量,引入了标签@符.
- {@tplname:var}
- 场景回放:
- 在index_run.htm中调用action
- [code]class IndexController extends WindController {
- public function run() {
- $this->setOutput('模板标签教程', 'title') ; //注册变量title,其值为:'模板标签教程'
- $var = array();
- $var['team'] = 'windFramework';
- $var['time'] = date('Y-m-d');
- $this->setOutput($var); //批量注册变量,分别注册了变量$team和$time在模板中
- $var1 = array();
- $var1['name'] = 'WindFramework';
- $var1['info'] = '如风般温和,如风般疯狂,如风般清爽,如风般迅速';
- $this->setOutput($var1, 'info');//注册一个数组变量$info到模板中
- }
- }2
复制代码 在index_other.htm模板中,我访问主模板中index_run中的变量:
- class IndexController extends WindController {
- public function run() {
- $this->setOutput('模板标签教程', 'title') ; //注册变量title,其值为:'模板标签教程'
- $var = array();
- $var['team'] = 'windFramework';
- $var['time'] = date('Y-m-d');
- $this->setOutput($var); //批量注册变量,分别注册了变量$team和$time在模板中
- $var1 = array();
- $var1['name'] = 'WindFramework';
- $var1['info'] = '如风般温和,如风般疯狂,如风般清爽,如风般迅速';
- $this->setOutput($var1, 'info');//注册一个数组变量$info到模板中
- }
- }3
复制代码
以上第一个访问变量是other中注册的自己的变量。第二行则是我访问主模板中的title变量
组件标签支持:component
该组件标签,主要是为了能在当前应用中调用其他应用或是模块而设定。
- class IndexController extends WindController {
- public function run() {
- $this->setOutput('模板标签教程', 'title') ; //注册变量title,其值为:'模板标签教程'
- $var = array();
- $var['team'] = 'windFramework';
- $var['time'] = date('Y-m-d');
- $this->setOutput($var); //批量注册变量,分别注册了变量$team和$time在模板中
- $var1 = array();
- $var1['name'] = 'WindFramework';
- $var1['info'] = '如风般温和,如风般疯狂,如风般清爽,如风般迅速';
- $this->setOutput($var1, 'info');//注册一个数组变量$info到模板中
- }
- }4
复制代码 属性解析:
- class IndexController extends WindController {
- public function run() {
- $this->setOutput('模板标签教程', 'title') ; //注册变量title,其值为:'模板标签教程'
- $var = array();
- $var['team'] = 'windFramework';
- $var['time'] = date('Y-m-d');
- $this->setOutput($var); //批量注册变量,分别注册了变量$team和$time在模板中
- $var1 = array();
- $var1['name'] = 'WindFramework';
- $var1['info'] = '如风般温和,如风般疯狂,如风般清爽,如风般迅速';
- $this->setOutput($var1, 'info');//注册一个数组变量$info到模板中
- }
- }5
复制代码- class IndexController extends WindController {
- public function run() {
- $this->setOutput('模板标签教程', 'title') ; //注册变量title,其值为:'模板标签教程'
- $var = array();
- $var['team'] = 'windFramework';
- $var['time'] = date('Y-m-d');
- $this->setOutput($var); //批量注册变量,分别注册了变量$team和$time在模板中
- $var1 = array();
- $var1['name'] = 'WindFramework';
- $var1['info'] = '如风般温和,如风般疯狂,如风般清爽,如风般迅速';
- $this->setOutput($var1, 'info');//注册一个数组变量$info到模板中
- }
- }6
复制代码 先分享到这里... |
|