当前位置: 首页 > 图文教程 > 网络编程 > PHP > 也用PHP来实现网页静态发布的两种方法

PHP
PHP 变量类型的强制转换
PHP 判断变量类型实现代码
PHP 数组教程 定义数组
php后台程序与Javascript的两种交互方式
php 文件上传系统手记
php 网页游戏开发入门教程一(webgame+design)
PHP 简单日历实现代码
dedecms 批量提取第一张图片最为缩略图的代码(文章+软件)
php 显示指定路径下的图片
php pack与unpack 摸板字符字符含义
ThinkPHP php 框架学习笔记
PHP 批量删除数据的方法分析
PHP 读取和修改大文件的某行内容的代码
php实现jQuery扩展函数
浅谈PHP 闭包特性在实际应用中的问题
PHP 文件上传源码分析(RFC1867)
php 攻击方法之谈php+mysql注射语句构造
PHP+MySQL 手工注入语句大全 推荐
php UTF8 文件的签名问题
php 远程包含文件漏洞分析

也用PHP来实现网页静态发布的两种方法


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 75 ::
收藏到网摘: 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中的内容将会显示不出来

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