//使用するファイルを設定します
$srcurl = "http://localhost/index.php";
$tempfilename = "tempindex.html";
$targetfilename = "index.html";
?>
生成中
生成中 < ;?php echo("$targetfilename"); ?>...
//最初に、最後の操作で残っている可能性のある一時ファイルを削除します。
//このプロセスではエラーが発生する可能性があるため、エラーを防ぐために @ を使用します。
@unlink($tempfilename);
//URL リクエストを通じて動的バージョンをロードします。
//関連するコンテンツを受信する前に、Web サーバーは PHP を処理します。
//(本質的に Web ブラウザをシミュレートしているため)、
//したがって、取得するのは静的な HTML ページです。
//'r' は、この「ファイル」に対する読み取り操作のみが必要であることを示します。
$dynpage = fopen($srcurl, 'r');
//エラー処理
if (!$dynpage) {
echo("
$srcurl をロードできません。静的page ".
"update aborted!
");
exit();
}
//この URL の内容を PHP 変数に読み取ります。
//1MB のデータを読み取ることを指定します (このデータ量を超えると、通常はエラーが発生したことを意味します)。
$htmldata = fread($dynpage, 1024*1024);
//作業が終了したら、ソース「ファイル」への接続を閉じます。
fclose($dynpage);
//書き込み用に一時ファイル (このプロセス中に作成される) を開きます ('w' の使用法に注意してください)。
$tempfile = fopen($tempfilename, 'w ');
//エラー処理
if (!$tempfile) {
echo("
書き込み用に一時ファイル ".
"($tempfilename) を開けません。静的ページ".
"更新は中止されました!
");
exit();
}
//静的ページのデータを一時ファイルに書き込みます
fwrite ($ tempfile, $htmldata);
//書き込み完了後、一時ファイルを閉じます。
fclose($tempfile);
//ここに到達すると、一時ファイルが正常に書き込まれているはずです。
//これで、それを使用して元の静的ページを上書きできます。
$ok = copy($tempfilename, $targetfilename);
//最後にこの一時ファイルを削除します。
unlink($tempfilename);
?>
静的ページが正常に更新されました!