一聚教程网:一个值得你收藏的教程网站

最新下载

热门教程

PHP生成HTML纯静态网页程序代码

时间:2013-03-09 编辑:简简单单 来源:一聚教程网

关于用PHP如何实现全站静态化处理的内容,这样让php生成HTML纯静态网页,让访问速度更快。

 

 代码如下 复制代码

//在开始处加入 ob_start();
ob_start();

//以下是代码
//在结尾加入 ob_end_clean(),并把本页输出到一个变量中
$temp = ob_get_contents();
ob_end_clean();

//写入文件
$fp = fopen(‘文件名','w');
fwrite($fp,$temp) or die(‘写文件错误');
?>

这只是最基本的方法,还不是很实用,因为网站是要更新的,要定期重新生成HTML

下面是我用的方法:

 代码如下 复制代码

if(file_exists(“demo.html”))
{
$time = time();

//文件修改时间和现在时间相差半小时一下的话,直接导向html文件,否则重新生成html
if($time - filemtime(“demo.html”) < 30*60)
{
header(“Location:demo.html”);
}
}
//在开始处加入 ob_start();
ob_start();

//页面的详细内容
//在结尾加入 ob_end_clean(),并把本页输出到一个变量中
$temp = ob_get_contents();
ob_end_clean();

//写入文件
$fp = fopen(‘demo.html','w');
fwrite($fp,$temp) or die(‘写文件错误');

//重新导向
header(“Location:demo.html”);

上面的方法在大批生成时可能不是最好的办法了

 

 代码如下 复制代码

if($_GET[pg]==''){
$aa=1;
}else{
$aa=$_GET[pg];
}
include("admin/conn.php");
require_once("page.php");
$result=mysql_query("select * from 2carsell ");
$totle=mysql_num_rows($result);
$pagelist = $_GET[t];
if($_GET[t]==''){
$pagelist='200';
}else{
$pagelist=$_GET[t];
}
$pager = new Pager($totle,$pagelist);
$datastat=" 共 ".$pager->countall." 条,每次生成 ".$pager->countlist." 条,共需生成 ".$pager->page." 次";//数据统计
$bb=$pager->page;
$pagenav=$pager->backstr.$pager->thestr.$pager->nextstr;
$limitFrom = $pagelist*($pager->pg-1);
$result=mysql_query("select * from 2carsell ORDER BY id DESC limit $limitFrom,$pagelist");
?>

次页面生成中..


print "



 




$aa=$aa+1;
if($aa>$bb){
echo '恭喜,所有页面生成完毕!';
echo "";
}else{
echo "";
}
?>

说明:原动态地址为 moban.php?id=1 ,生成后地址为 html/200808/sell_1.html 。page.php为分页程序,本博客中有发布。
页面使用方式,将本代码保存为make.php,使用方法为浏览器访问 make.php?t=数量&pg=页面;例如 make.php?t=300&pg=2,即每次生成300条数据,从数据列表第2页开始生成,即跳过前面300条。如果不加任何参数,直接访问make.php,则默认每次生成200条,从第一页开始生成。

热门栏目