Thinkphp实现站点静态化的方法详解


Posted in PHP onMarch 21, 2017

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文件夹必须清空

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
我的论坛源代码(四)
Oct 09 PHP
ajax php 实现写入数据库
Sep 02 PHP
php Smarty模板生成html文档的方法
Apr 12 PHP
php动态生成版权所有信息的方法
Mar 24 PHP
Codeigniter的dom类用法实例
Jun 26 PHP
PHP解压ZIP文件到指定文件夹的方法
Nov 17 PHP
php使用str_shuffle()函数生成随机字符串的方法分析
Feb 17 PHP
PHP实现图片的等比缩放和Logo水印功能示例
May 04 PHP
PHP实现的简单适配器模式示例
Jun 22 PHP
PHP实现动态压缩js与css文件的方法
May 02 PHP
PHP微商城开源代码实例
Mar 27 PHP
laravel框架中视图的基本使用方法分析
Nov 23 PHP
php登录超时检测功能实例详解
Mar 21 #PHP
php base64 编码与解码实例代码
Mar 21 #PHP
详解PHP中的序列化、反序列化操作
Mar 21 #PHP
php实现文件管理与基础功能操作
Mar 21 #PHP
THINKPHP截取中文字符串函数实例代码
Mar 20 #PHP
PHP随机获取未被微信屏蔽的域名(微信域名检测)
Mar 19 #PHP
php中通过eval实现字符串格式的计算公式
Mar 18 #PHP
You might like
星际中一些鲜为人知的详细资料
2020/03/04 星际争霸
PHP 输出简单动态WAP页面
2009/06/09 PHP
php设计模式之命令模式的应用详解
2013/05/21 PHP
ThinkPHP做文字水印时提示call an undefined function exif_imagetype()解决方法
2014/10/30 PHP
php实现只保留mysql中最新1000条记录
2015/06/18 PHP
php判断当前操作系统类型
2015/10/28 PHP
PHP使用SWOOLE扩展实现定时同步 MySQL 数据
2017/04/09 PHP
Laravel中encrypt和decrypt的实现方法
2017/09/24 PHP
javascript中日期转换成时间戳的小例子
2013/03/21 Javascript
JavaScript实现维吉尼亚(Vigenere)密码算法实例
2013/11/22 Javascript
JS运动基础框架实例分析
2015/03/03 Javascript
jQuery仿gmail实现fixed布局的方法
2015/05/27 Javascript
学习JavaScript设计模式(多态)
2015/11/25 Javascript
js判断图片加载完成后获取图片实际宽高的方法
2016/02/25 Javascript
jQuery时间日期三级联动(推荐)
2016/11/27 Javascript
清除输入框内的空格
2016/12/21 Javascript
JavaScript实现汉字转换为拼音的库文件示例
2016/12/22 Javascript
jQuery插件扩展操作入门示例
2017/01/16 Javascript
JS点击图片弹出文件选择框并覆盖原图功能的实现代码
2017/08/25 Javascript
微信小程序项目总结之点赞 删除列表 分享功能
2018/06/25 Javascript
JS实现匀速与减速缓慢运动的动画效果封装示例
2018/08/27 Javascript
Javascript 实现 Excel 导入生成图表功能
2018/10/22 Javascript
Node.js assert断言原理与用法分析
2019/01/04 Javascript
Python黑魔法Descriptor描述符的实例解析
2016/06/02 Python
Python正则表达式分组概念与用法详解
2017/06/24 Python
Python内存管理方式和垃圾回收算法解析
2017/11/11 Python
python 实现将文件或文件夹用相对路径打包为 tar.gz 文件的方法
2019/06/10 Python
对PyQt5的输入对话框使用(QInputDialog)详解
2019/06/25 Python
wxPython+Matplotlib绘制折线图表
2019/11/19 Python
Python jieba库分词模式实例用法
2021/01/13 Python
公务员政审材料
2014/12/23 职场文书
团员自我评价范文
2015/03/10 职场文书
感恩老师主题班会
2015/08/12 职场文书
导游词之神仙居景区
2019/11/15 职场文书
MySQL中的隐藏列的具体查看
2021/09/04 MySQL
Mysql的Table doesn't exist问题及解决
2022/12/24 MySQL