• PHP生成静态页面的方法


     
     
     
    在PHP网站开发中为了网站推广和SEO等需要,需要对网站进行全站或局部静态化处理,PHP生成静态HTML页面有多种方法,比如利用PHP模板、缓存 等实现页面静态化,今天就以PHP实例教程形式讨论PHP生成静态页面的方法。页面静态化的方法,分为两种,一种是伪静态,就是url 重写,一种是你真的静态化。下面介绍PHP中页面静态化的方法。

    什么是PHP静态化

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

    PHP生成静态HTML页面的方法

    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页面以实现网站静态化的方法就介绍完了,根据实际情况和需求你可以选择不同的静态化方法。

  • 相关阅读:
    基于redission的分布式锁
    kafka在Windows环境下启动
    Synchronized优化总结
    mysql死锁总结
    索引是建立得越多越好吗?
    show processlist 详解
    RocketMQ高可用机制同步刷盘、异步刷盘和同步复制、异步复制
    Redlock红锁总结
    C#2.0泛型
    《解剖PetShop》系列之四:PetShop之ASP.NET缓存 (转)
  • 原文地址:https://www.cnblogs.com/ldms/p/3880510.html
Copyright © 2020-2023  润新知