时间:2021-05-18
<?php
functionCreateShtml()
{
ob_start(array("callback_CreateShtml","callback_GoToShtml"));
}
functioncallback_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;
}
functioncallback_GoToShtml($buffer)
{
$page=intval(@$_REQUEST["page"]);
$fileName=basename($_SERVER['PHP_SELF'],".php").($page==0?"":"_".strval($page)).".htm";
header("location:".$fileName);
return$buffer;
}
functionGoToShtml()
{
$page=intval(@$_REQUEST["page"]);
$fileName=basename($_SERVER['PHP_SELF'],".php").($page==0?"":"_".strval($page)).".htm";
if(file_exists($fileName))
header("location:".$fileName);
}
functionDeleteShtml($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();
?>
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
一、全文搜索Lecene框架二、缓存实现页面级的URL缓存三、生成静态文件比如说,一个首页可能会员由多个部分组成,每个模块生成一个静态文件,然后才用服务器端包含
本文实例讲述了PHP使用OB缓存实现静态化功能。分享给大家供大家参考,具体如下:实现步骤1、创建测试数据表并且写入数据2、实现后台的更新操作。使用OB缓存针对每
前台静态化:把动态页面解析后保存为静态页面文件缓存:把查询结果保存为文件,XML内存缓存:memcachephp缓存器:XCache、eaccelerator等
1,file_put_contents()函数2,使用PHP内置缓存机制实现页面静态化:output_bufferingphp中output_buffering
其实这里的静态页面并不是真正意义上的静态,但可以达到了静态页面的解析效率,还未经项目测试,拿来分享。复制代码代码如下:如果过期就更新页面,没有过期直接调用静态页