簡易ページバッファリング技術(2)
ページ
私の具体的な実装例
皆様の感覚的な理解を助けるために、私のホームページで実装したファイルベースの処理方法をここに示します。メイン処理コードのみで不完全です。
1 $tmpfile="../tmp/".basename($REQUEST_URI);
2 $tmpfile=str_replace("?", "_", $tmpfile); &", "_", $tmpfile);
4 if(file_exists($tmpfile))
5 {
6 $cflag=false;
7 $dtmp=filemtime($tmpfile);
8 $itmp=filemtime($ incfile);
9 $cflag=$cflag | ($dtmp < $itmp);
10 $ctmp=filemtime($PHP_SELF); ($dtmp < $ctmp) ; 12 $ttmp=filemtime("template/content.ihtml"); 13 $cflag=$cflag | ($dtmp < $ttmp); 15 else 16 $cflag=true; 18 if(!$cflag) //既存のファイルを使用します
19 {
20 readfile($tmpfile);
21 exit;
22 }
23
24 // 新しいファイルを作成します
25 include "template.class.php3";
26
27 $fp=fopen($incfile, "r");
28 $content=fread($fp, filesize($incfile));
29 fclose($fp);
30
31 // テンプレートの処理以下で実行されます
32 $t = new Template("template", "keep");
33
34 $t->set_file("contentfile","content.ihtml");
35
36 $t- > ;set_var(
37 array(
38 "content"=>$content
39 ));
40
41 $t->parse("outputcontent","contentfile");
42
43 $fp= fopen ($tmpfile, "w");
44 if($fp)
45 {
46 flock($fp, 3)
47 fwrite($fp, $t->get_var("outputcontent"); 48 flock($fp, 1);
49 fclose($fp);
50 }
51 $t->p("outputcontent")
まず、私のディレクトリを紹介します。構造:
/---bin/ 実行プログラムディレクトリ
|--content.php3 ファイル表示処理に使用するプログラム
|--template/ テンプレートファイルを格納するディレクトリ
| ---content. file
|-docs/ data file
|-tmp/ バッファファイルを格納します
content.php3 ファイルは動的ページの処理に使用されます。ユーザーは、content.php3?page=id 番号を通じてデータ ファイルを読み取ることができます。各データ ファイルに異なる ID 番号があることがわかっていれば、メソッド content.php3?page=id 番号によってデータ ファイルを一意に識別できます。
1 ~ 3 行目、一時ファイル名を生成します。 「?」、「&」、およびその他の文字を「_」に置き換えます。
4 行目、一時ファイル名が存在するかどうかを確認し、存在する場合は 18 ~ 22 行目を実行して終了します。
6行目から13行目は、動的ページの生成に関連するファイル変更時刻と一時ファイルが更新されたかどうかを判断し、再生成フラグを設定します。ここで filemtime() を使用して、最終変更時刻を取得します。
24 行目から 41 行目では、テンプレート クラスを使用して動的な結果を生成し、それらを変数に配置します。テンプレートの加工については「テンプレート、PHPLIBの加工方法」の記事を参照してください。
43 ~ 50 行目、一時ファイルを生成します。書き込みの競合を防ぐために、ファイルはここでロックされます。
51行目、結果を出力します。
これは私が対処した方法です。ご自身で変更することもできます。
バッファリングは、アクセス速度を向上させ、システム消費量を削減できる有意義なテクノロジーです。ただし、方法はたくさんあり、誰もが自由に使用できます。
このサイトからの注: この記事を読んで、著者の考えがこのサイトの静的記事更新の実装原則と同じであることがわかりました。違いは、このサイトの記事は 4 日ごとに定期的に更新されることです。ご興味がございましたら、ページ下部の「ソースを表示」リンクから特定の実装コードをご覧ください。ご質問や良いアイデアがある場合は、フォーラムに参加して一緒に話し合ってください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











PHP 関数の紹介 - filemtime(): ファイルの最終変更時刻を取得する 概要: PHP では、filemtime() は非常に一般的に使用される関数であり、ファイルの最終変更時刻を取得するために使用されます。この関数を通じて、ファイルの最終変更タイムスタンプを取得して、ファイルの操作と処理を容易にすることができます。この記事では、filemtime() 関数の使用方法を紹介し、読者がこの関数をよりよく理解して使用できるようにコード例を示します。関数の構文: intfilemtime

PHP 関数「filemtime」を使用すると、ファイルの最終変更時刻を取得できます。使い方は非常に簡単で、ファイル パスをパラメータとして渡すだけで、関数はファイルの最終変更時刻を示すタイムスタンプを返します。次に、この関数の使い方とコード例を紹介します。 PHP では、「filemtime」関数を次のように使用できます: $file_path='path/to/file.txt';//ファイル パス

php提交表单通过后,弹出的对话框怎样在当前页弹出php提交表单通过后,弹出的对话框怎样在当前页弹出而不是在空白页弹出?想实现这样的效果:而不是空白页弹出:------解决方案--------------------如果你的验证用PHP在后端,那么就用Ajax;仅供参考:HTML code

PHP 関数の紹介: is_file() 関数 PHP プログラミングにおいて、is_file() 関数は非常に便利な関数です。これは、パスまたはファイルが存在し、通常のファイルであるかどうかを判断するために使用されます。この記事では、is_file() 関数の使用方法を紹介し、具体的なコード例をいくつか示します。まず、is_file() 関数の構文を見てみましょう: boolis_file(string$filename)is_

この記事では、PHP での一時ファイルの作成について詳しく解説しますが、編集者が非常に実践的だと考えたので、参考として共有します。 PHP での一時ファイルの作成の概要 場合によっては、PHP はデータを保存または処理するために一時ファイルを作成する必要があります。一時ファイルはシステム ファイル システムに一時的に保存されるファイルで、通常はスクリプトの実行後に自動的に削除されます。ステップ 1. 一時ファイル ハンドルを作成する tmpfile() 関数を使用して、一時ファイル ハンドルを作成します。この関数は、データの書き込みと読み取りに使用できる一時ファイルを指すストリームを返します。 $file=tmpfile();2. データの書き込み fwrite() 関数を使用して、一時ファイルにデータを書き込みます。

PHP 関数の紹介 - tmpfile(): 一時ファイルの作成 PHP プログラミングでは、ファイルの処理は非常に一般的な操作です。場合によっては、特定の処理を実行するためにファイルを一時的に作成する必要がありますが、ファイルを長期間保存したくないことがあります。このとき、PHP の tmpfile() 関数を使用して一時ファイルを作成できます。この記事では、tmpfile()関数の使い方と注意点を紹介します。 tmpfile() 関数は、PHP ファイル システム関数の 1 つです。

CSS コンテンツ属性の詳細な説明: content、counter、quotesCSS (カスケード スタイル シート) はフロントエンド開発に不可欠な部分であり、Web ページを美しくし、ユーザー エクスペリエンスを向上させるのに役立ちます。 CSS には、コンテンツ、カウンター、引用符などのテキスト コンテンツの表示を制御するために使用できる特別なプロパティがいくつかあります。この記事では、これらのプロパティについて詳しく説明し、具体的なコード例を示します。 1. content 属性content 属性

CNBC の Andrew Ross Sorkin とのインタビューで、Microsoft AI CEO の Mustafa Suleyman 氏は Web 著作権法についての理解を表明しました。スレイマン氏は、オープンウェブ上でアクセス可能なコンテンツは「フリーウェア」であり、誰でもコピーしたり複製したりできると述べている。
