利用PHP生成静态HTML文档的原理

时间:2022-04-24 14:36:21

给出代码: 

复制代码代码如下:


<?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']);