ThinkPHP3.1新特性之内容解析输出详解

2015-01-24信息快讯网

以往版本的ThinkPHP对于模板文件保存在数据库里面的情况下,无法进行模板文件读取的。这篇文章主要介绍了ThinkPHP3.1新特性的内容解析输出,需要的朋友可以参考下

以往版本的ThinkPHP中页面输出的过程是读取模板文件,然后进行模板解析(也支持调用第三方模板引擎解析),但是有一些情况,我们并没有定义模板文件,或者把模板文件保存在数据库里面,那么这种情况下进行页面输出的时候,我们是无法进行模板文件读取的,ThinkPHP3.1版本则针对这样的情况增加了内容解析输出的功能。

内置的模板引擎也进行了完善,如果传入的模板文件不存在的话,则会认为是传入的模板解析内容,因此,ThinkPHP3.1版的View类和Action类也做了一些相应的改进。

display方法用于模板文件渲染输出,show方法则用于模板内容渲染输出,并且show方法仍然支持内容解析功能,因此,我们可以在控制器中这样使用:

$this->assign('name','ThinkPHP');
$this->show('hello,{$name}!');

页面输出的结果是:

hello,ThinkPHP!

你也可以采用读取数据库的方式:

$content = M('Data')->where($map)->getField('content');
$this->show($content);

对于$content变量中的内容,可以和模板文件一样支持变量和标签库的解析,并且也可以支持模板布局功能。
show方法也可以指定输出编码和类型,例如:

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

总之,有了show方法后,可以把模板放数据库中,对于模板的管理和更新也更加方便了。

php格式输出文件var_export函数实例
php使用date和strtotime函数输出指定日期的方法
浅谈PHP解析URL函数parse_url和parse_str
ThinkPHP水印功能实现修复PNG透明水印并增加JPEG图片质量可调整
Thinkphp中volist标签mod控制一定记录的换行BUG解决方法
ThinkPHP入库出现两次反斜线转义及数据库类转义的解决方法
php使用ZipArchive提示Fatal error: Class ZipArchive not found in的解决方法
自编函数解决pathinfo()函数处理中文问题
ThinkPHP实现二级循环读取的方法
ThinkPHP写数组插入与获取最新插入数据ID实例
ThinkPHP模板之变量输出、自定义函数与判断语句用法
php输出xml必须header的解决方法
PHP中构造函数和析构函数解析
PHP中常用的输出函数总结
PHP使用Mysql事务实例解析
PHP闭包实例解析
ThinkPHP的MVC开发机制实例解析
ThinkPHP3.1新特性之对分组支持的改进与完善概述
ThinkPHP3.1新特性之对页面压缩输出的支持
ThinkPHP3.1新特性之多数据库操作更加完善
ThinkPHP3.1新特性之G方法的使用
ThinkPHP3.1新特性之查询条件预处理简介
ThinkPHP3.1新特性之字段合法性检测详解
php的SimpleXML方法读写XML接口文件实例解析
PHP输出英文时间日期的安全方法(RFC 1123格式)
CodeIgniter输出中文乱码的两种解决办法
PHP解析html类库simple_html_dom的转码bug
PHP循环输出指定目录下的所有文件和文件夹路径例子(简单实用)
php导出csv数据在浏览器中输出提供下载或保存到文件的示例
PHP中redis的用法深入解析
php中sprintf与printf函数用法区别解析
PHP json_decode函数详细解析
©2014-2024 dbsqp.com