zoukankan      html  css  js  c++  java
  • 利用PHP生成静态HTML文档的原理

    效果网站 - 乌鸟博客: http://huxuemail.web-104.com/blog/20121028212055.html
    乌鸟heart - 博客园http://www.cnblogs.com/wuniaoheart/ 

    利用PHP,将数据库中的文章数据生成单个的HTML文档。首先,有利于搜索引擎的收录。其次,避免数据库中的字段暴露在地址栏上,更安全。 
    给出代码:

    <?php
    //引入数据库配置文件
    include( dirname(dirname(__FILE__))."\include\config.php" );
    
    /**
     * 
     * 将数据库中的文章生成单个HTML文件.
     * @param Date $Date
     * @param Time $Time
     * @param String $Content
     * @param String $Title
     */
    function GenerateHTML($Date,$Time,$Content,$Title,$Name){
    
    //将日期、时间变量分解成数组
    $GetDateRow = explode("-", $Date);
    $GetTimeRow = explode(":",$Time);
    
    //得到文件的名字。比如:20121028210632.html
    $FileName = $GetDateRow[0].$GetDateRow[1].$GetDateRow[2].$GetTimeRow[0].$GetTimeRow[1].$GetTimeRow[2].".html";
    
    //打开并读取模板内容
    $FP = fopen("tmp.html","r");
    $Str = fread($FP,filesize("tmp.html"));
    
    //得到替换后的模板内容
    $Str = str_replace("{Title}",$Title, $Str);
    $Str = str_replace("{Content}", $Content, $Str);
    $Str = str_replace("{Name}", $Name, $Str);
    $Str = str_replace("{Date}", $Date,$Str);
    $Str = str_replace("{Time}", $Time, $Str);
    
    //关闭文件,减少服务器的压力。
    fclose($FP);
    
    //将内容写入HTML文件
    $Handle = fopen($FileName,"w");
    fwrite($Handle,$Str);
    fclose($Handle);
    
    //小测一下
    //echo "ok,done!";
    
    }
    
    //数据库的操作
    $querysql = "select * from article";
    $queryset = mysql_query($querysql);
    
    //循环生成HTML文件。
    while( $row = mysql_fetch_array($queryset) ){
        GenerateHTML($row['date'],$row['time'],$row['content'],$row['title'],$row['name']);
    }

    OK,DONE!

  • 相关阅读:
    第10组 Beta冲刺(2/4)
    第10组 Beta冲刺(1/4)
    第10组 Alpha冲刺(4/4)
    第08组 Beta版本演示
    第08组 Beta冲刺(4/4)
    第08组 Beta冲刺(3/4)
    第08组 Beta冲刺(2/4)
    第08组 Beta冲刺(1/4)
    第08组 Alpha事后诸葛亮
    第08组 Alpha冲刺(4/4)
  • 原文地址:https://www.cnblogs.com/wuniaoheart/p/2743975.html
Copyright © 2011-2022 走看看