什么是PHP静态化

PHP静态化的简单理解就是使网站生成页面以静态HTML的形式展现在访客面前,PHP静态化分纯静态化和伪静态化,两者的区别在于PHP生成静态页面的处理机制不同。

PHP生成静态HTML页面的方法

1、利用PHP模板生成静态页面

PHP模板实现静态化非常方便,比如安装和使用PHP Smarty实现网站静态化。

2、使用PHP文件读写功能生成静态页面

PHP生成静态页面实例代码

<? $out1 = "<html><head><title>PHP网站静态化教程</title></head> <body>欢迎访问PHP网站开发教程网www.leapsoul.cn,本文主要介绍PHP网站页面静态化的方法 </body></html>"; $fp = fopen("leapsoulcn.html","w"); if(!$fp) { echo "System Error"; exit(); } else { fwrite($fp,$out1); fclose($fp); echo "Success"; } ?>

3、使用PHP输出控制函数(Output Control)生成静态页面

输出控制函数(Output Control)也就是使用和控制缓存来生成静态HTML页面,也会使用到PHP文件读写函数。

PHP生成静态页面实例代码

<? ob_start();echo "<html>" . "<head>" . "<title>PHP网站静态化教程</title>" . "</head>" . "<body>欢迎访问PHP中文网www.php.cn,本文主要介绍PHP网站页面静态化的方法</body>" . "</html>";$out1 = ob_get_contents();ob_end_clean();$fp = fopen("leapsoulcn.html", "w");if (!$fp) {    echo "System Error";    exit();} else {    fwrite($fp, $out1);    fclose($fp);    echo "Success";} ?>

我们知道使用PHP进行网站开发,一般执行结果直接输出到游览器,为了使用PHP生成静态页面,就需要使用输出控制函数控制缓存区,以便获取缓存区的内容,然后再输出到静态HTML页面文件中以实现网站静态化。

PHP生成静态页面的思路为:首先开启缓存,然后输出了HTML内容(你也可以通过include将HTML内容以文件形式包含进来),之后获取缓存中的内容,清空缓存后通过PHP文件读写函数将缓存内容写入到静态HTML页面文件中。PHP文件读写教程?

获得输出的缓存内容以生成静态HTML页面的过程需要使用三个函数:ob_start()、ob_get_contents()、ob_end_clean()。

知识点:

1、ob_start函数一般主要是用来开启缓存,注意使用ob_start之前不能有任何输出,如空格、字符等。

2、ob_get_contents函数主要用来获取缓存中的内容以字符串形式返回,注意此函数必须在ob_end_clean函数之前调用,否则获取不到缓存内容。

3、ob_end_clean函数主要是清空缓存中的内容并关闭缓存,成功则返回True,失败则返回False

PHP输出控制函数(Output Control)有很多应用,今后将陆续展开。

至此,使用PHP生成静态HTML页面以实现网站静态化的方法就介绍完了,根据实际情况和需求你可以选择不同的静态化方法。

推荐教程:《PHP教程

更多相关文章

  1. PHP中如何形成static::与new static()的静态绑定
  2. PHP页面静态化之纯静态与伪静态用法详解
  3. 基于ob系列函数实现PHP网站页面静态化
  4. 详解PHP中abstract(抽象)、final(最终)和static(静态)原理与用法
  5. 你绝对想不到的laravel清理缓存方法
  6. 聊聊PHP中的单例模式与静态变量
  7. 示例PHP MemCached高级缓存应用代码
  8. 解析基于php伪静态的实现方法
  9. 详解PHP网页缓存技术优点及代码实例

随机推荐

  1. 怎样通过读源码提高你的 JavaScript 知识
  2. Mount挂载
  3. 用纯 JavaScript 撸一个 MVC 框架[每日前
  4. Node.js 12中的ES模块[每日前端夜话0x9E]
  5. 那些最受欢迎的 Node.js 视图引擎[每日前
  6. 人生第一次写博客,就先当作日记写了
  7. Node.js 事件循环完整指南[每日前端夜话0
  8. JavaScript 进阶问题列表[每日前端夜话0x
  9. 【python】虚拟环境搭建
  10. 美国终于挥舞着霸权大棒向程序员动手了