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

 更新时间:2011年03月09日 23:45:44   作者:  
php下利用ob_start来生成静态页面的方法,需要生成静态的朋友可以参考下。
虽然方法很多,但使用起来简便容易的,我觉得还是先判断已经生成的首页文件的生成时间和现有时间之间的差值,如果满足某个值就开始生成,这种方法比较来得容易,不多说了,开始吧!

在开始之前还是提一下三个函数吧:"ob_start()、ob_end_clean()、ob_get_contents()"

ob_start():是打开缓冲区的,就是要把您需要生成的静态文件的内容缓存在这里;
ob_get_contents():是读出缓冲区里的内容,下面有代码为例;
ob_end_clean():这个比较重要,只有使用了这个函数后,缓冲区里的内容才会读取出来;复制内容到剪贴板代码:
复制代码 代码如下:

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完成!";


实例代码:
复制代码 代码如下:

<?php
ob_start();
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title><?php echo '编程导航 dh.jb51.net';?></title>
</head>

<body>
<?php echo "dh.jb51.net";?>
</body>
</html>
<?php
$cacheStr=ob_get_contents();
$handle=fopen("jb51.html","w");
fwrite($handle, $cacheStr);
ob_clean();
?>

相关文章

  • php获取汉字拼音首字母的方法

    php获取汉字拼音首字母的方法

    这篇文章主要介绍了php获取汉字拼音首字母的方法,需要的朋友可以参考下
    2015-10-10
  • Laravel框架中实现使用阿里云ACE缓存服务

    Laravel框架中实现使用阿里云ACE缓存服务

    这篇文章主要介绍了Laravel框架中实现使用阿里云ACE缓存服务,本文扩展了一个ACE缓存驱动,以便使用阿里云ACE缓存服务,需要的朋友可以参考下
    2015-02-02
  • 部署PHP项目应该注意的几点事项分享

    部署PHP项目应该注意的几点事项分享

    这篇文章主要介绍了部署PHP项目应该注意的几点事项,有需要的朋友可以参考一下
    2013-12-12
  • 基于PHP实现JWT登录鉴权的示例代码

    基于PHP实现JWT登录鉴权的示例代码

    JWT(JSON Web Token)是为了在网络应用环境间传递声明而执行的一种基于JSON的开放标准。本文将为大家介绍PHP如何实现JWT登录鉴权,需要的可以参考一下
    2022-04-04
  • PHP 之Section与Cookie使用总结

    PHP 之Section与Cookie使用总结

    Session 将信息保存在服务器上.服务器在接受到唯一的SESSION_ID后,根据这个ID获取相关数据,然后将信息传递到客户端(浏览器).Cookie 是将所有信息以文本的形式存在本地文件,并由客户端(浏览器)进行管理与维护
    2012-09-09
  • PHP读取txt文件的内容并赋值给数组的代码

    PHP读取txt文件的内容并赋值给数组的代码

    使用file_get_contents()获取txt文件的内容,然后通过explode()把获得的字符串转化为数组。获得数组长度可以使用count()函数
    2011-11-11
  • 浅谈定义一个PHP函数

    浅谈定义一个PHP函数

    在过去很长一段时间里,PHP都是开发web应用的不二之选。现在7.x版本又填补了许多高级特性和现代化应用的需求,并且提高了开发者的效率。这门语言正不断的发生改变,找出这些变化,并停止过去的写法,放弃你原来的习惯并自豪的使用这些新特性,让你的代码更易读易懂。
    2021-05-05
  • 浅析十款PHP开发框架的对比

    浅析十款PHP开发框架的对比

    本文将引导你遍览十款最热门最流行的开发框架,并对它们作出横向比对。我会先列出一张所有框架的一览表,而后我们将对它们逐个简述
    2013-07-07
  • 深入探讨"&lt;br /&gt;"和 "\r\n" 两者有什么区别??

    深入探讨"&lt;br /&gt;"和 "\r\n" 两者有什么

    本篇文章是对"<br />"和"\r\n"两者的区别进行了详细的分析介绍,需要的朋友参考下
    2013-06-06
  • PHP设计模式概论【概念、分类、原则等】

    PHP设计模式概论【概念、分类、原则等】

    这篇文章主要介绍了PHP设计模式概论,总结叙述了设计模式的基本概念、功能、分类、原则等,需要的朋友可以参考下
    2020-05-05

最新评论