ThinkPHP模板输出display用法分析


Posted in PHP onNovember 26, 2014

本文实例分析了ThinkPHP模板输出display用法。分享给大家供大家参考。具体分析如下:

模板变量赋值后就需要调用模板文件来输出相关的变量,模板调用通过display方法来实现,我们在操作方法的最后使用:

$this->display();

就可以输出模板,根据前面的模板定义规则,因为系统会按照默认规则自动定位模板文件,所以通常display方法无需带任何参数即可输出对应的模板,这是模板输出的最简单的用法。

事情总有特例,或者根本不需要按模块进行分目录存放,不过display方法总是能够帮你解决问题。

Display方法提供了几种规则让你可以随心所欲的输出需要的模板,无论你的模板文件在什么位置。

下面来看具体的用法:

一、调用当前模块的其他操作模板

格式:display('操作名')

例如,假设当前操作是User模块下面的read操作,我们需要调用User模块的edit操作模版,使用:

$this->display('edit');

不需要写模板文件的路径和后缀。

二、调用其他模块的操作模板

格式:display('模块名:操作名')

例如,当前是User模块,我们需要调用Member模块的read操作模版 ,使用:

$this->display('Member:read');

这种方式也不需要写模板文件的路径和后缀,严格来说,这里面的模块名和操作名并不一定需要有对应的模块或者操作,只是一个目录名称和文件名称而已,例如,你的项目里面可能根本没有Public模块,更没有Public模块的menu操作,但是一样可以使用

$this->display('Public:menu');

输出这个模板文件,理解了这个,模板输出就清晰了.

三、调用其他主题的操作模板

格式:display('主题名:模块名:操作名')

例如我们需要 调用Xp主题的User模块的edit操作模版,使用:

$this->display('Xp:User:edit');

这种方式需要指定模块和操作名

四、直接全路径输出模板

格式:display('模板文件名')

例如,我们直接输出当前的Public目录下面的menu.html模板文件,使用:

$this->display('./Public/menu.html');

这种方式需要指定模板路径和后缀,这里的Public目录是位于当前项目入口文件位置下面,如果是其他的后缀文件,也支持直接输出,例如:

$this->display('./Public/menu.tpl');

只要./Public/menu.tpl是一个实际存在的模板文件,如果使用的是相对路径的话,要注意当前位置是相对于项目的入口文件,而不是模板目录.

事实上,display方法还有其他的参数和用法。

有时候某个模板页面我们需要输出指定的编码,而不是默认的编码,可以使用:

$this->display('Member:read', 'gbk');

或者输出的模板文件不是text/html格式的,而是XML格式的,可以用:

$this->display('Member:read', 'utf-8', 'text/xml');

如果你的网站输出编码不是默认的编码,可以使用:

'DEFAULT_CHARSET'=> 'gbk'

如果要输出XML格式的,可以用:

'TMPL_CONTENT_TYPE'=> 'text/xml'

如果不需要渲染模板文件而是直接输出内容,可以使用show方法,例如:

$this->show($content, 'utf-8', 'text/xml');

希望本文所述对大家的ThinkPHP框架程序设计有所帮助。

PHP 相关文章推荐
PHP Header用于页面跳转要注意的几个问题总结
Oct 03 PHP
phpMyadmin 用户权限中英对照
Apr 02 PHP
PHP 的ArrayAccess接口 像数组一样来访问你的PHP对象
Oct 12 PHP
PHP更新购物车数量(表单部分/PHP处理部分)
May 03 PHP
php curl的深入解析
Jun 02 PHP
php实现有趣的人品测试程序实例
Jun 08 PHP
Adnroid 微信内置浏览器清除缓存
Jul 11 PHP
PHP实现统计在线人数功能示例
Oct 15 PHP
PHP生成腾讯云COS接口需要的请求签名
May 20 PHP
php中的钩子理解及应用实例分析
Aug 30 PHP
Laravel 框架返回状态拦截代码
Oct 18 PHP
gearman管理工具GearmanManager的安装与php使用方法示例
Feb 27 PHP
php中数字、字符与对象判断函数用法实例
Nov 26 #PHP
PHP中array_slice函数用法实例详解
Nov 25 #PHP
ThinkPHP框架设计及扩展详解
Nov 25 #PHP
Yii入门教程之目录结构、入口文件及路由设置
Nov 25 #PHP
Yii入门教程之Yii安装及hello world
Nov 25 #PHP
php 伪造ip以及url来路信息方法汇总
Nov 25 #PHP
浅析php适配器模式(Adapter)
Nov 25 #PHP
You might like
自动生成文章摘要的代码[PHP 版本]
2007/03/20 PHP
php下intval()和(int)转换使用与区别
2008/07/18 PHP
php的debug相关函数用法示例
2016/07/11 PHP
php处理复杂xml数据示例
2016/07/11 PHP
Laravel 5.5基于内置的Auth模块实现前后台登陆详解
2017/12/21 PHP
php通过header发送自定义数据方法
2018/01/18 PHP
通过jQuery打造支持汉字,拼音,英文快速定位查询的超级select插件
2010/06/18 Javascript
js换图片效果可进行定时操作
2014/06/09 Javascript
js获取checkbox值的方法
2015/01/28 Javascript
js实现数组转换成json
2015/06/26 Javascript
悬浮广告方法日常收集整理
2016/03/18 Javascript
JavaScript中对JSON对象的基本操作示例
2016/05/21 Javascript
学习Angular中作用域需要注意的坑
2016/08/17 Javascript
利用yarn代替npm管理前端项目模块依赖的方法详解
2017/09/04 Javascript
vue-router2.0 组件之间传参及获取动态参数的方法
2017/11/10 Javascript
JS改变页面颜色源码分享
2018/02/24 Javascript
Vue移动端右滑屏幕返回上一页附源码下载
2019/06/26 Javascript
react中Suspense的使用详解
2019/09/01 Javascript
Vue 实现显示/隐藏层的思路(加全局点击事件)
2019/12/31 Javascript
在Ubuntu系统下安装使用Python的GUI工具wxPython
2016/02/18 Python
python实现中文转换url编码的方法
2016/06/14 Python
python select.select模块通信全过程解析
2017/09/20 Python
Python数据可视化正态分布简单分析及实现代码
2017/12/04 Python
基于Python中numpy数组的合并实例讲解
2018/04/04 Python
python 随机打乱 图片和对应的标签方法
2018/12/14 Python
Windows 平台做 Python 开发的最佳组合(推荐)
2020/07/27 Python
html5 canvas合成海报所遇问题及解决方案总结
2017/08/03 HTML / CSS
英国地毯卖家:The Rug Seller
2019/07/18 全球购物
下面关于"联合"的题目的输出是什么
2013/08/06 面试题
广州地球村科技数据库题目
2016/04/25 面试题
先进党支部事迹材料
2014/01/13 职场文书
爱祖国爱家乡演讲稿
2014/09/02 职场文书
公务员检讨书
2014/11/01 职场文书
2015年乡镇安全生产工作总结
2015/05/19 职场文书
被告代理词范文
2015/05/25 职场文书
GO语言异常处理分析 err接口及defer延迟
2022/04/14 Golang