唐山网站建设

设为主页 加入收藏 繁體中文

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

核心提示:如今很多网站都是静态发布的,PHP固然也能够方便的实现静态发布喽,具体的实现方法很多,下面我就说说我会的两种方法。

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

方法1:ob_get_contents()

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

示例:

ob_strart();#打开缓冲区
$fn=date('ymdhis').rand(1000,9999).'html';//天生文件名
require("supply.php");#载进要天生静态页的文件,由于后台有ob_clen()所以在不会显示出来
$fs=fopen($fn,'w');#打开静态页文件
fwrite($fs,ob_get_contents());#天生静态文件
ob_clean();#清空缓存
?>

方法2:file_get_contents();

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

下面对上面的留意进行1下解释,假设在些你使用的是仅仅是文件名,而不是URL那末您这个文件中假设有使用援用文件比如require

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

方法3:str_replace()

$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中的内容将会显示不出来

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

 

http://www.fw8.net/
TAG:方法,内容,文件,缓存,静态
评论加载中...
内容:
评论者: 验证码: