ホームページ >php教程 >PHP开发 >PHP は定期的に静的 HTML 実装コードを自動的に生成します

PHP は定期的に静的 HTML 実装コードを自動的に生成します

高洛峰
高洛峰オリジナル
2016-12-21 11:18:211246ブラウズ

ただし、スケジュールされた生成にはいくつかの制限があります。独立したサーバーを持っている場合は、サーバー上でスケジュールされたタスクを設定できますが、仮想ホストを使用する場合は、方法はたくさんありますが、簡単です。を使用するには、まず、生成されたホームページ ファイルの生成時間と既存の時間の差を判断するのが簡単だと思います。 あまり言うことはありません。

オンライン 見つけたら、書き留めてください。実践により、それが利用可能であることが証明されました。

<?php 
$nowtime=time(); 
$pastsec = $nowtime – $_GET["t"]; 

if($pastsec<60) 
{ 
exit; //1分钟更新一次,时间可以自己调整 
} 

ob_start(); //打开缓冲区 
include(”index.php”); 
$content = ob_get_contents(); //得到缓冲区的内容 
$content .= “n<script language=javascript src=”f5.php?t=”.$nowtime.”"></script>”; //加上调用更新程序的代码 

file_put_contents(”index.html”,$content); 

if (!function_exists(”file_put_contents”)) 
{ 
function file_put_contents($fn,$fs) 
{ 
$fp=fopen($fn,”w+”); 
fputs($fp,$fs); 
fclose($fp); 
} 
}

ここにいくつかの説明があります:
始める前に 3 つの関数について触れましょう: "ob_start()、ob_end_clean()、ob_get_contents()"

ob_start():是打开缓冲区的,就是要把你需要生成的静态文件的内容缓存在这里; 
ob_get_contents():是读出缓冲区里的内容,下面有代码为例; 
ob_end_clean():这个比较重要,只有使用了这个函数后,缓冲区里的内容才会读取出来;

[code]
if(file_exists("./index.htm "))/ /静的なindex.htmファイルが存在するかどうかを確認します
{
$time=time();

//ファイルの変更時刻が現在時刻と異なる場合は、htmファイルに直接アクセスし、そうでない場合はhtmを再生成します
if( $ time-filemtime("./index.htm"){
header("Location:classhtml/main.htm")

}
} // 先頭に ob_start() を追加your ;
ob_start();

//ホームページのコンテンツは動的部分です

//このページを変数に追加します
$temp=ob_get_contents(); //ファイルの書き込み
$fp=fopen("./index.htm",'w');
fwrite($fp,$temp) または die('ファイルの書き込みエラー')
// echo "HTML の生成が完了しました!";
[html]





静的 HTML を定期的に自動生成する PHP の実装コードに関連するその他の記事については、PHP 中国語 Web サイトに注目してください。


声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。