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


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 相关文章推荐
PHP 和 XML: 使用expat函数(一)
Oct 09 PHP
IIS6的PHP最佳配置方法
Mar 19 PHP
PHP 5.3 下载时 VC9、VC6、Thread Safe、Non Thread Safe的区别分析
Mar 28 PHP
PHP源码之explode使用说明
Aug 05 PHP
PHP限制HTML内容中图片必须是本站的方法
Jun 16 PHP
详解php设置session(过期、失效、有效期)
Nov 12 PHP
php简单创建zip压缩文件的方法
Apr 30 PHP
PHP使用mysql与mysqli连接Mysql数据库用法示例
Jul 07 PHP
php实现微信企业付款到个人零钱功能
Oct 09 PHP
Laravel框架查询构造器 CURD操作示例
Sep 04 PHP
浅析PHP反序列化中过滤函数使用不当导致的对象注入问题
Feb 15 PHP
PHP+Mysql分布式事务与解决方案深入理解
Feb 27 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 采集书并合成txt格式的实现代码
2009/03/01 PHP
用php解析html的实现代码
2011/08/08 PHP
解析PHP中的内存管理,PHP动态分配和释放内存
2013/06/28 PHP
php通过curl模拟登陆DZ论坛
2015/05/11 PHP
PHP命名空间和自动加载类
2016/04/03 PHP
PHP结合Vue实现滚动底部加载效果
2017/12/17 PHP
PHP分页显示的方法分析【附PHP通用分页类】
2018/05/10 PHP
在laravel框架中实现封装公共方法全局调用
2019/10/14 PHP
jQuery 仿百度输入标签插件附效果图
2014/07/04 Javascript
node.js中的fs.mkdir方法使用说明
2014/12/17 Javascript
浅谈javascript中replace()方法
2015/11/10 Javascript
jQuery通过deferred对象管理ajax异步
2016/05/20 Javascript
javascript三种代码注释方法
2016/06/02 Javascript
JavaScript必知必会(九)function 说起 闭包问题
2016/06/08 Javascript
完美实现八种js焦点轮播图(下篇)
2020/04/20 Javascript
jquery 属性选择器(匹配具有指定属性的元素)
2016/09/06 Javascript
详解用webpack2.0构建vue2.0超详细精简版
2017/04/05 Javascript
jQuery.extend 与 jQuery.fn.extend的用法及区别实例分析
2018/07/25 jQuery
解决vue cli4升级sass-loader(v8)后报错问题
2020/07/30 Javascript
js实现圆形菜单选择器
2020/12/03 Javascript
[01:34]完美“圣”典宣传片震撼发布,12.17与你不见不散
2016/12/16 DOTA
Python中对列表排序实例
2015/01/04 Python
Python发送邮件测试报告操作实例详解
2018/12/08 Python
python 多进程并行编程 ProcessPoolExecutor的实现
2019/10/11 Python
如何理解python面向对象编程
2020/06/01 Python
Python join()函数原理及使用方法
2020/11/14 Python
解决pycharm导入numpy包的和使用时报错:RuntimeError: The current Numpy installation (‘D:\\python3.6\\lib\\site-packa的问题
2020/12/08 Python
俄罗斯花园种植材料批发和零售网上商店:Беккер
2019/07/22 全球购物
培训心得体会
2013/12/29 职场文书
学习经验交流会主持词
2014/04/01 职场文书
气象学专业个人求职信
2014/04/22 职场文书
团员个人总结
2015/02/26 职场文书
一年级语文教学随笔
2015/08/14 职场文书
《我是什么》教学反思
2016/02/16 职场文书
用Python实现一个打字速度测试工具来测试你的手速
2021/05/28 Python
Windows下用Nginx配置https服务器及反向代理的问题
2021/09/25 Servers