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 相关文章推荐
php Smarty date_format [格式化时间日期]
Mar 15 PHP
PHP中运用jQuery的Ajax跨域调用实现代码
Feb 21 PHP
php数据结构与算法(PHP描述) 查找与二分法查找
Jun 21 PHP
ThinkPHP3.1新特性之Action参数绑定
Jun 19 PHP
PHP计算百度地图两个GPS坐标之间距离的方法
Jan 09 PHP
WordPress中限制非管理员用户在文章后只能评论一次
Dec 31 PHP
Zend Framework实现多服务器共享SESSION数据的方法
Mar 22 PHP
php实现简单爬虫的开发
Mar 28 PHP
PHP自定义函数获取URL中一级域名的方法
Aug 23 PHP
PHP简单实现合并2个数字键数组值的方法
May 30 PHP
thinkPHP框架实现的简单计算器示例
Dec 07 PHP
Laravel5.1 框架路由基础详解
Jan 04 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
PHP is_dir() 判断给定文件名是否是一个目录
2010/05/10 PHP
php下连接ftp实现文件的上传、下载、删除文件实例代码
2010/06/03 PHP
jquery+ashx无刷新GridView数据显示插件(实现分页、排序、过滤功能)
2010/04/25 Javascript
JQuery的Validation插件中Remote验证的中文问题
2010/07/26 Javascript
jQuery动态添加 input type=file的实现代码
2012/06/14 Javascript
Javascript判断图片尺寸大小实例分析
2014/06/16 Javascript
JS实现仿QQ效果的三级竖向菜单
2015/09/25 Javascript
jQuery查看选中对象HTML代码的方法
2016/06/17 Javascript
JavaScript的this关键字的理解
2016/06/18 Javascript
jQuery模拟实现的select点击选择效果【附demo源码下载】
2016/11/09 Javascript
nodejs个人博客开发第四步 数据模型
2017/04/12 NodeJs
全面解析vue中的数据双向绑定
2017/05/10 Javascript
原生js的ajax和解决跨域的jsonp(实例讲解)
2017/10/16 Javascript
基于Vue的移动端图片裁剪组件功能
2017/11/28 Javascript
vue.js 底部导航栏 一级路由显示 子路由不显示的解决方法
2018/03/09 Javascript
一次微信小程序内地图的使用实战记录
2019/09/09 Javascript
CountUp.js实现数字滚动增值效果
2019/10/17 Javascript
微信小程序实现发微博功能的示例代码
2020/06/24 Javascript
解决nuxt 自定义全局方法,全局属性,全局变量的问题
2020/11/05 Javascript
[02:39]DOTA2英雄基础教程 极限穿梭编织者
2013/12/05 DOTA
tornado框架blog模块分析与使用
2013/11/21 Python
教你使用python画一朵花送女朋友
2018/03/29 Python
python: 自动安装缺失库文件的方法
2018/10/22 Python
PyInstaller运行原理及常用操作详解
2020/06/13 Python
python使用建议技巧分享(三)
2020/08/18 Python
python3排序的实例方法
2020/10/20 Python
详解tf.device()指定tensorflow运行的GPU或CPU设备实现
2021/02/20 Python
美国高档帽子网上商店:Hats.com
2018/08/09 全球购物
车间统计员岗位职责
2014/01/05 职场文书
蔬菜基地的创业计划书
2014/01/06 职场文书
酒店开业庆典主持词
2014/03/21 职场文书
2014最新党员批评与自我批评材料
2014/09/24 职场文书
2015世界地球日活动总结
2015/02/09 职场文书
电话营销开场白
2015/05/29 职场文书
幼儿园保教工作总结2015
2015/10/15 职场文书
测量JavaScript函数的性能各种方式对比
2021/04/27 Javascript