function CreateShtml()
{
ob_start(array("callback_CreateShtml","callback_GoToShtml"));
}
function callback_CreateShtml($buffer)[
{
$page = intval(@$_REQUEST["page"]);
$fileName = $_SERVER['DOCUMENT_ROOT'] 。 ディレクトリ名($_SERVER['PHP_SELF']) 。 「/」 。 ベース名($_SERVER['PHP_SELF'],".php") 。 ($page==0 ? "" : "_" . strval($page)) 。 ".htm";
$fp = fopen($fileName,"wb");
fwrite($fp,$buffer);
fclose($fp);
$buffer を返す;
}
関数 callback_GoToShtml($buffer)
{
$page = intval(@$_REQUEST["page"]);
$fileName = ベース名($_SERVER['PHP_SELF'],".php") 。 ($page==0 ? "" : "_" . strval($page)) 。 ".htm";
header("location:" . $fileName);
$buffer を返す;
}
function GoToShtml()
{
$page = intval(@$_REQUEST["page"]);
$fileName = ベース名($_SERVER['PHP_SELF'],".php") 。 ($page==0 ? "" : "_" . strval($page)) 。 ".htm";
if(file_exists($fileName))
header("location:" . $fileName);
}
関数 DeleteShtml($fileName=NULL)
{
if(is_null($fileName))
$fileName = $_SERVER['DOCUMENT_ROOT'] 。 $_SERVER['PHP_SELF'];
if($fileName[0]=="/")
$fileName = $_SERVER['DOCUMENT_ROOT'] 。 $ファイル名;
$path = ディレクトリ名($fileName);
$dir = dir($path);
$patten = "/^" 。 ベース名($fileName, ".php") 。 "(_[0-9] )?.htm/";
while(($entry = $dir->read())!==false)
{
if(is_file($path . "/" . $entry) && preg_match($patten,$entry))
リンク解除 ($path . "/" . $entry);
}
}
CreateShtml();
echo "これは静态生成の页面です!$page";
GoToShtml();
DeleteShtml();
?>