PHP生成静态页面的方法

今天有一位朋友问我WP的问题,说主页调用的数据太多了,所以访问起来速度非常的慢,我告诉他就把那些插件什么的给删除掉,他又说那些插件非常有用,之后只能告诉他直接生成html了,半个小时过去了,他说不会整。其实WP上有这样的插件的,为什么非要自己写了?真的是纠结?!谁叫他是我的老死!只好帮他整一个!

但整之前先告诉大家什么PHP静态化!

什么是PHP静态化?

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

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

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

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

PHP生成静态页面实例代码

  1. <?
  2. $out1 = “<html><head><title>PHP网站静态化教程</title></head>
  3. <body>欢迎访问PHP网站开发教程网www.leapsoul.cn,本文主要介绍PHP网站页面静态化的方法
  4. </body></html>”;
  5. $fp = fopen(“leapsoulcn.html”,”w”);
  6. if(!$fp)
  7. {
  8. echo “System Error”;
  9. exit();
  10. }
  11. else {
  12. fwrite($fp,$out1);
  13. fclose($fp);
  14. echo “Success”;
  15. }
  16. ?>

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

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

PHP生成静态页面实例代码

  1. <?
  2. ob_start();
  3. echo “<html>”.
  4. “<head>”.
  5. “<title>PHP网站静态化教程</title>”.
  6. “</head>”.
  7. “<body>欢迎访问PHP网站开发教程网www.leapsoul.cn,本文主要介绍PHP网站页面静态化的方法</body>”.
  8. “</html>”;
  9. $out1 = ob_get_contents();
  10. ob_end_clean();
  11. $fp = fopen(“leapsoulcn.html”,”w”);
  12. if(!$fp)
  13. {
  14. echo “System Error”;
  15. exit();
  16. }
  17. else
  18. {
  19. fwrite($fp,$out1);
  20. fclose($fp);
  21. echo “Success”;
  22. }
  23. ?>

我们知道使用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生成静态页面的方法

赞 (0)
分享到:更多 ()

评论 0

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址