当前位置: 首页 > 图文教程 > 网络编程 > PHP > PHP实现静态发布的方法浅谈

PHP
挑战最棒的留言本的源码(三)
php抓即时股票信息
挑战最棒的留言本的源码(四)
使用网络地址转换实现多服务器负载均衡
挑战最棒的留言本的源码(五)
屏蔽浏览器缓存另类方法
PHP脚本数据库功能详解(上)
PHP脚本数据库功能详解(中)
PHP脚本数据库功能详解(下)
一个用mysql_odbc和php写的serach数据库程序
一个简单计数器的源代码
文件上传程序的全部源码
计算2000年01月01日起到指定日的天数
通过文字传递创建的图形按钮
如何在WIN2K下安装PHP4.04
新闻分类录入、显示系统
在字符串中把网址改成超级链接
Php做的端口嗅探器--可以指定网站和端口
不用数据库的多用户文件自由上传投票系统(2)
一个简单的域名注册情况查询程序

PHP实现静态发布的方法浅谈


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 188 ::
收藏到网摘: n/a

如今很多网站都是静态发布的,PHP当然也可以方便的实现静态发布喽,具体的实现方法很多,下面我就说说我会的两种方法。

方法一:ob_get_contents()

这是一种很方便的方法,也是很常用的方法,实现原理是:首先打开缓存,然后创建相应的静态页文件,写入缓存的内容,清空缓存。

示例:

方法二:file_get_contents();

<?php
$fn=date('ymdhis').rand(1000,9999).'html';
$url= 'http://'.$_SERVER['HTTP_HOST']."/";#注意
$content=file_get_contents($url);
$fs=fopen($fn,'w');
fwrite($fs,$content);
?>

下面对上面的注意进行一下解释,如果在些你使用的是仅仅是文件名,而不是URL那么您这个文件中如果有使用引用文件比如require

('header.php');那么header.php中的内容将会显示不出来。

方法三:str_replace()

<?php
$filemodel="supply.php"; 字串5$file=fopen($filemodel,"w+");
$temp=fread($file,filesize($filemodel));
$temp=str_replace("[title]",$title,$temp);
$temp=str_replace("[postTime]",$postTime,$temp);
$temp=str_replace("[content]",$content,$temp);
?>

该方法适用于很简单的页面,如果supply.php中有使用引用文件比如require('header.php');那么header.php中的内容将会显示不出来

我仅仅是给出了最简单的方法,在实际应用中,您可以写一个生成静态页的类,在类中加入相应的异常处理,该文件仅仅给出一个示例。