用缓存实现静态页面的测试


Posted in PHP onDecember 06, 2006

<?php 
function CreateShtml() 

ob_start(array("callback_CreateShtml","callback_GoToShtml")); 

function callback_CreateShtml($buffer)[ 

$page = intval(@$_REQUEST["page"]); 

$fileName = $_SERVER['DOCUMENT_ROOT'] . dirname($_SERVER['PHP_SELF']) . "/" . basename($_SERVER['PHP_SELF'],".php") . ($page==0 ? "" : "_" . strval($page)) . ".htm"; 

$fp = fopen($fileName,"wb"); 

fwrite($fp,$buffer); 

fclose($fp); 

return $buffer; 

function callback_GoToShtml($buffer) 

$page = intval(@$_REQUEST["page"]); 

$fileName = basename($_SERVER['PHP_SELF'],".php") . ($page==0 ? "" : "_" . strval($page)) . ".htm"; 

header("location:" . $fileName); 

return $buffer; 

function GoToShtml() 

$page = intval(@$_REQUEST["page"]); 

$fileName = basename($_SERVER['PHP_SELF'],".php") . ($page==0 ? "" : "_" . strval($page)) . ".htm"; 

if(file_exists($fileName)) 

header("location:" . $fileName); 

function DeleteShtml($fileName=NULL) 

if(is_null($fileName)) 

$fileName = $_SERVER['DOCUMENT_ROOT'] . $_SERVER['PHP_SELF']; 

if($fileName[0]=="/") 

$fileName = $_SERVER['DOCUMENT_ROOT'] . $fileName; 

$path = dirname($fileName); 

$dir = dir($path); 

$patten = "/^" . basename($fileName, ".php") . "(_[0-9]+)?.htm/"; 

while(($entry = $dir->read())!==false) 

if(is_file($path . "/" .$entry) && preg_match($patten,$entry)) 

unlink ($path . "/" . $entry); 

CreateShtml(); 
echo "这是静态生成的页面!$page"; 
GoToShtml(); 
DeleteShtml(); 
?>

PHP 相关文章推荐
别人整理的服务器变量:$_SERVER
Oct 20 PHP
在PHP中使用curl_init函数的说明
Nov 02 PHP
php模拟js函数unescape的函数代码
Oct 20 PHP
浅谈web上存漏洞及原理分析、防范方法(文件名检测漏洞)
Jun 29 PHP
php缓存技术详细总结
Aug 07 PHP
php根据指定位置和长度获得子字符串的方法
Mar 17 PHP
编写PHP程序检查字符串中的中文字符个数的实例分享
Mar 17 PHP
PHP实现移除数组中为空或为某值元素的方法
Jan 07 PHP
laravel 事件/监听器实例代码
Apr 12 PHP
laravel执行php artisan migrate报错的解决方法
Oct 09 PHP
PHP使用JpGraph绘制折线图操作示例【附源码下载】
Oct 18 PHP
yii2.0框架实现上传excel文件后导入到数据库的方法示例
Apr 13 PHP
一些PHP写的小东西
Dec 06 #PHP
关于时间计算的结总
Dec 06 #PHP
一段防盗连的PHP代码
Dec 06 #PHP
PHP安全配置
Dec 06 #PHP
PHP一些有意思的小区别
Dec 06 #PHP
弄了个检测传输的参数是否为数字的Function
Dec 06 #PHP
PHP4 与 MySQL 数据库操作函数详解
Dec 06 #PHP
You might like
php实现文件下载更能介绍
2012/11/23 PHP
探讨fckeditor在Php中的配置详解
2013/06/08 PHP
php超快高效率统计大文件行数
2015/07/05 PHP
thinkphp3.2.3版本的数据库增删改查实现代码
2016/09/22 PHP
解决PHP程序运行时:Fatal error: Maximum execution time of 30 seconds exceeded in的错误提示
2016/11/25 PHP
Laravel中正确地返回HTTP状态码方法示例
2019/09/10 PHP
解决js正则匹配换行问题实现代码
2012/12/10 Javascript
关于javascript模块加载技术的一些思考
2014/11/28 Javascript
javascript实现的简单计时器
2015/07/19 Javascript
JS+CSS相对定位实现的下拉菜单
2015/10/06 Javascript
利用jQuery及AJAX技术定时更新GridView的某一列数据
2015/12/04 Javascript
jQuery如何封装输入框插件
2016/08/19 Javascript
浅谈jQuery中的eq()与DOM中element.[]的区别
2016/10/28 Javascript
AngularJS入门教程之数据绑定用法示例
2016/11/01 Javascript
Bootstrap基本组件学习笔记之分页(12)
2016/12/08 Javascript
Javascript Function.prototype.bind详细分析
2016/12/29 Javascript
javascript图片预览和上传(兼容IE)
2017/03/15 Javascript
jquery dataTable 获取某行数据
2017/05/05 jQuery
Angular2 组件间通过@Input @Output通讯示例
2017/08/24 Javascript
koa router 多文件引入的方法示例
2019/05/22 Javascript
vue+vant 上传图片需要注意的地方
2021/01/03 Vue.js
微信小程序之高德地图多点路线规划过程示例详解
2021/01/18 Javascript
[05:31]DOTA2英雄梦之声_第08期_莉娜
2014/06/23 DOTA
python网络爬虫学习笔记(1)
2018/04/09 Python
读取json格式为DataFrame(可转为.csv)的实例讲解
2018/06/05 Python
用Python实现筛选文件脚本的方法
2018/10/27 Python
详解opencv Python特征检测及K-最近邻匹配
2019/01/21 Python
Python3.5基础之NumPy模块的使用图文与实例详解
2019/04/24 Python
利用Python计算KS的实例详解
2020/03/03 Python
基于python实现计算且附带进度条代码实例
2020/03/31 Python
xadmin使用formfield_for_dbfield函数过滤下拉表单实例
2020/04/07 Python
工商管理专业学生的自我评价
2013/10/01 职场文书
保安岗位职责
2014/02/21 职场文书
完美的中文自荐信
2014/05/24 职场文书
2014年政府采购工作总结
2014/12/09 职场文书
雷锋之歌观后感
2015/06/10 职场文书