php中静态化生成的方法
例子,利用三个函数:ob_start()、ob_get_contents()、ob_end_clean()函数
php静态化知识点:
1、ob_start函数一般主要是用来开启缓存,注意使用ob_start之前不能有任何输出,如空格、字符等。
2、ob_get_contents函数主要用来获取缓存中的内容以字符串形式返回,注意此函数必须在ob_end_clean函数之前调用,否则获取不到缓存内容。
3、ob_end_clean函数主要是清空缓存中的内容并关闭缓存,成功则返回True,失败则返回False
输出控制函数(Output Control)也就是使用和控制缓存来生成静态HTML页面,也会使用到PHP文件读写函数。
PHP生成静态页面实例代码
代码如下 | |
<? echo "<html>". |
例子,
利用框架模板生成最近比较火的php框架有thinkphp下面我们就以它为例子。
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。如果为空则默认生成当前操作的静态文件。
1 、在入口文件index.php文件中定义生成静态页面的文件位置,然后在个目录新建Html文件夹
代码如下 | |
define( 'HTML_PATH' , './Html' );//www..net |
2 、在根目录的config文件夹中的config.php配置静态页面的类型,设为 html
代码如下 | |
'HTML_FILE_SUFFIX' = > '.html' , // 默认静态文件后缀 |
3 、在“Tpl / default / ”目录中新建一个Index的文件夹,文件夹下面新建一个index.html的模板, 模板里面内容为:这是生成静态页例子
4 、控制器IndexAction. class .php中的代码
代码如下 | |
class IndexAction extends Action{ |
解释 :
这里的buildHtml是thinkphp内置的函数,这里的意思是:
将index的模板文件生成utf8编码格式的静态网页,该文件名为 1 .html,存在于根目录的htm文件中
该函数有 5 个参数,具体如下 :
buildHtml($htmlfile,$htmlpath,$templateFile,$charset,$contentType = 'text/html' )
参数:
$htmlfile 生成的静态文件名称
$htmlpath 生成的静态文件路径
$templateFile 指定要生成静态的模板文件
$charset 生成静态文件的编码格式
$contentType 生成静态文件的类型
// 生成静态页
代码如下 | |
class AddhtmlAction extends CommonAction { public function index(){ $this->assign('abc', 'abc222222222'); $pagename = '123 www..net'; //页面名称 $temppath = ''; //显示模版路径 //查看配置文件是否开启显示静态模版 if(C('IS_HTML')) { //判断是否已经生成静态页面 if(!is_file(HTML_PATH . '/'. $pagename .'html')) $this->buildHtml($pagename, HTML_PATH.'/', 'index', 'utf8');//注意:index为动态模版 这里的utf8不能写成utf-8 $temppath = HTML_PATH . '/'. $pagename .'html'; } $this->display($temppath); } } |
相关
文章安卓 | V0.9.54.529
简体中文 | 1.6 GB
8.9
安卓 | v1.0
简体中文 | 22.8 MB
8.1
安卓 | V3.1.3
简体中文 | 121.6 MB
8.4
安卓 | v1.0.56
简体中文 | 296 MB
8.6
安卓 | V1.0.1
简体中文 | 0 Bytes
8.7
安卓 | v5.0.81
简体中文 | 667.2 MB
8.1
安卓 | V1.0.0
简体中文 | 55.4 MB
7.3
安卓 | V2023178.0.35513
简体中文 | 522.2 MB
9.4
本站为非营利性个人网站,本站所有游戏来自于互联网,版权属原著所有。如有侵犯你的版权,请发邮件给wishdown2023@163.com
湘ICP备2021017279号-3 公安部备案号:13092602000101
Copyright©2006-2019 www.wishdown.com All rights reserved