用php的ob_start来生成静态页面的方法分析

前端之家收集整理的这篇文章主要介绍了用php的ob_start来生成静态页面的方法分析前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

虽然方法很多,但使用起来简便容易的,我觉得还是先判断已经生成首页文件生成时间和现有时间之间的差值,如果满足某个值就开始生成,这种方法比较来得容易,不多说了,开始吧! 在开始之前还是提一下三个函数吧:"ob_start()、ob_end_clean()、ob_get_contents()" ob_start():是打开缓冲区的,就是要把您需要生成静态文件内容缓存在这里;
ob_get_contents():是读出缓冲区里的内容,下面有代码为例;
ob_end_clean():这个比较重要,只有使用了这个函数后,缓冲区里的内容才会读取出来;复制内容到剪贴板代码:
<div class="codetitle"><a style="CURSOR: pointer" data="63070" class="copybut" id="copybut63070" onclick="doCopy('code63070')"> 代码如下:

<div class="codebody" id="code63070">
if(file_exists("./index.htm"))//看静态index.htm文件是否存在
{
$time=time(); //文件修改时间和现在时间相差?的话,直接导向htm文件,否则重新生成htm
if($time-filemtime("./index.htm")< 600)
{
header("Location:classhtml/main.htm"); }
} //在你的开始处加入ob_start();CHINAZ //首页内容,就是你的动态部分了 //在结尾加入ob_end_clean(),并把本页输出到一个变量中
$temp=ob_get_contents();
ob_end_clean(); //写入文件
$fp=fopen("./index.htm",'w');
fwrite($fp,$temp) or die('写文件错误');
//echo"生成HTML完成!";
实例代码
<div class="codetitle"><a style="CURSOR: pointer" data="54784" class="copybut" id="copybut54784" onclick="doCopy('code54784')"> 代码如下:
<div class="codebody" id="code54784">
<?PHP
ob_start();
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&gt;
<html xmlns="http://www.w3.org/1999/xhtml"&gt;


<?php echo '编程导航 dh.jb51.cc';?>

<?php echo "dh.jb51.cc";?>


<?PHP
$cacheStr=ob_get_contents();
$handle=fopen("jb51.html","w");
fwrite($handle,$cacheStr);
ob_clean();
?>

猜你在找的PHP相关文章