采用thinkphp自带方法生成静态html文件详解


Posted in PHP onJune 13, 2014

thinkphp本身自带了一个有效的生成静态页的方法,(该方法在tp2.0的手册上有说明,3.0的手册上没有说明了,不过3.0方法还是存在的。)

$this->buildHtml('静态文件', '静态路径','模板文件');

稍微说明下参数,有些朋友问我这个参数和具体如何使用。

参数一:静态文件,是指生成后的静态文件名,文件保存路径完整的就是:静态路径/静态文件。例如静态文件设置a/index.那么保存的路径就是项
目路径/Html/a/index.html(默认的静态路径在项目路径的Html文件夹下,没有可以自己创建)

参数二:静态路径,上面已经说明了默认的路径,3.0中可以在入口文件里加入参数来更改静态路径。
define('HTML_PATH', './');(将静态路径义为网站根目录)

参数三:模板文件,我感觉官方这个描述是不正确的,准确的来说应该是目标模块,就是需要生成静态文件的模块。格式:模块名:操作。比如要生成Index下的a方法为静态文件,那就是Index:a。如果为空则默认生成当前操作的静态文件。
例子:

    class IndexAction extends Action {

      public function index(){

      $this->buildHtml("index",'',"");

      $this -> display();

      }

    }

其实
$this->buildHtml("index",'',"");
$this->buildHtml("index",'',"Index:index");
$this->buildHtml("index",'',"index");

这样三个格式是等效的

可以在当前模块下加入语句,那么只要运行该模块就会产生指定的目录下的"模块.html"文件,通常的做法就是站点建设好以后,专门写一个方法,然后让其执行,使整个站点一次性生成静态文件,注意:如果站点有编辑或调整那么必须清理缓存一次,就是项目下的Runtime文件夹必须清空。

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

PHP 相关文章推荐
强烈推荐:php.ini中文版(1)
Oct 09 PHP
php的ajax框架xajax入门与试用介绍
Dec 19 PHP
让Nginx支持ThinkPHP的URL重写和PATHINFO的方法分享
Aug 08 PHP
php数组函数序列之next() - 移动数组内部指针到下一个元素的位置,并返回该元素值
Oct 31 PHP
PHP Global定义全局变量使用说明
Aug 15 PHP
thinkphp的CURD和查询方式介绍
Dec 19 PHP
使用PHP强制下载PDF文件示例
Jan 17 PHP
浅谈PHP中单引号和双引号到底有啥区别呢?
Mar 04 PHP
Zend Framework教程之Zend_Config_Xml用法分析
Mar 23 PHP
PHP性能优化大全(php.ini)
May 20 PHP
php处理复杂xml数据示例
Jul 11 PHP
php实现在新浪云中使用imagick生成缩略图并上传的方法
Sep 26 PHP
PHP中使用gettext解决国际化问题的例子(i18n)
Jun 13 #PHP
Yii结合CKEditor实现图片上传功能
Jun 13 #PHP
在Yii框架中使用PHP模板引擎Twig的例子
Jun 13 #PHP
ThinkPHP中U方法的使用浅析
Jun 13 #PHP
PHP实现单例模式最安全的做法
Jun 13 #PHP
PHP5.5和之前的版本empty函数的不同之处
Jun 13 #PHP
PHP输出英文时间日期的安全方法(RFC 1123格式)
Jun 13 #PHP
You might like
PHP的历史和优缺点
2006/10/09 PHP
杏林同学录(六)
2006/10/09 PHP
用php过滤危险html代码的函数
2008/07/22 PHP
php中session过期时间设置及session回收机制介绍
2014/05/05 PHP
PHP 读取文本文件内容并分页显示
2016/01/02 PHP
详解Yii2 rules 的验证规则
2016/12/02 PHP
ECMAScript 基础知识
2007/06/29 Javascript
用jquery等比例控制图片宽高的具体实现
2014/01/28 Javascript
Javascript获取当前日期的农历日期代码
2014/10/08 Javascript
jQuery使用$.ajax进行即时验证的方法
2015/12/08 Javascript
浅谈toLowerCase和toLocaleLowerCase的区别
2016/08/15 Javascript
JS实现鼠标滑过显示边框的菜单效果
2016/09/21 Javascript
微信小程序 教程之条件渲染
2016/10/18 Javascript
React如何将组件渲染到指定DOM节点详解
2017/09/08 Javascript
JS简单数组排序操作示例【sort方法】
2019/05/17 Javascript
JS中如何轻松遍历对象属性的方式总结
2019/08/06 Javascript
基于Vue2实现移动端图片上传、压缩、拖拽排序、拖拽删除功能
2021/01/05 Vue.js
使用python实现扫描端口示例
2014/03/29 Python
Python sys.argv用法实例
2015/05/28 Python
Python实现利用最大公约数求三个正整数的最小公倍数示例
2017/09/30 Python
python 动态迁移solr数据过程解析
2019/09/04 Python
浅谈python输出列表元素的所有排列形式
2020/02/26 Python
Django ModelForm操作及验证方式
2020/03/30 Python
如何使用python切换hosts文件
2020/04/29 Python
python 浮点数四舍五入需要注意的地方
2020/08/18 Python
CSS超出文本指定宽度用省略号代替和文本不换行
2016/05/05 HTML / CSS
Grid 宫格常用布局的实现
2020/01/10 HTML / CSS
美丽的现代设计家具:2Modern
2018/07/26 全球购物
巴塞罗那观光通票:Barcelona Pass
2019/10/30 全球购物
日本整理专家Marie Kondo的官方在线商店:KonMari
2020/06/29 全球购物
医药学专业大学生职业生涯规划书论文
2014/01/21 职场文书
我的梦中国梦演讲稿
2014/04/23 职场文书
社区党员志愿服务活动方案
2014/08/18 职场文书
孝敬父母的活动方案
2014/08/28 职场文书
广告业务员岗位职责
2015/02/13 职场文书
详细介绍Java中的CyclicBarrier
2022/04/13 Java/Android