ユーザーが動的リンクをクリックするたびに、データ クエリ リクエストがサーバーに送信されるためです
何百万もの訪問者がいる可能性がある Web サイトの場合、これは間違いなくサーバーに大きな負担になります
そのため、動的データを変換しますそれを静的 HTML ページに変換することは、人的資源と物的リソースを節約するための第一の選択肢になりました
私はこれまで対応する経験がなかったので、最初はこのテクノロジーが非常に謎に満ちていると思いました
しかし、いくつかの例を読んだ後、そうではないことがわかりましたとても複雑です(ただし、インターネット上の情報は特に詳細ではありません)
午前と午後の実験を経て、最終的にタスクを完了しました。ここにいくつかの考えと簡単な例を示します
笑わないでください
。一般的に、HTML ページを変換して出力するには、PHP を使用します。Da Xia の記事を引用するには、次の 2 つの方法があります:
1 つ目の方法: テンプレートを使用します。現在、強力な Smarty やシンプルで使いやすい Smarttemplate など、多数の PHP テンプレートがあります。各テンプレートには、出力コンテンツを取得する関数があります。静的ページを生成するには、この関数を使用します。この方法を使用する利点は、コードがより明確で読みやすいことです。
ここでは、静的ページを生成する方法を説明するために例として Smarty を使用します:
2 番目の方法: ob シリーズの関数を使用します。ここで使用される関数は主に ob_start()、ob_end_flush()、ob_get_content() です。ここで、ob_start() はブラウザのバッファを開くことを意味し、代わりに PHP プログラムからのファイル以外のヘッダー情報はすべて送信されません。この関数の最も重要な関数は、上記の fetch() と同等のバッファの内容を取得することです。理由は同じです。
2 番目のタイプ I方法は、ob シリーズの関数を使用することです
最初にこれを読んだとき、私は少しわかりませんでしたが、後で、ob が出力バッファリング、つまり出力キャッシュであることを知りました
出力の準備ができたら、すべてのデータが保存されます。サーバーがphpを解析した後、クライアントに出力するHTMLコードはすべてobに保存されます。HTMLの静的ページを出力したい場合は、キャッシュを取り出してHTMLページに書き込むだけです。
その原理は実際には非常に単純です
ここではいくつかの関数が使用されています。私はPHPを初めて使用するため、多くの関数を理解していませんので、ここで説明します
ob_start()。 : キャッシュの「キャプチャ」を開始します。つまり、ここからブラウザのキャッシュを開きます
ob_end_flush(): ブラウザのキャッシュをオフにします
ob_get_content(): キャッシュされたコンテンツを読み取ります
fopen("ファイルパス", "オープンモード" ) ファイルを開く この関数にはいくつかの開くモードがあります。主なモードは次のとおりです:
"r" 読み取り専用モードで開き、ファイル ポインタをファイル ヘッダーにポイントします。
「r+」 読み取りおよび書き込みモードで開き、ファイル ポインターをファイル ヘッダーにポイントします。
"w" は書き込みモードで開き、ファイル ポインターをファイル ヘッダーにポイントし、ファイル サイズをゼロに切り捨てます。ファイルが存在しない場合は、作成してみてください。
「w+」 読み取りおよび書き込みモードで開き、ファイル ポインターをファイル ヘッダーにポイントし、ファイル サイズをゼロに切り捨てます。ファイルが存在しない場合は、作成してみてください。
fwrite("ファイル名", "書き込み内容") ファイルを書き込みます
fclose() ファイルを閉じます
変換したいHTMLファイルはたくさんあるので、数百になる可能性があるので、fopenへのパスはありませんここで静的に指定することができます。HTML ファイルの名前付けを容易にするために、ユーザーが送信した ID やその他の情報を保存できるパス変数を設定できます。前回、PHP で XML データを読み取る方法の簡単な例を示します。
転載: http://www.cnblogs.com/awinlei/archive/2013/03/04/2942962.html
上記では、PHP を使用して静的 HTML ページを生成するための 2 つの一般的な方法と、関連するコンテンツを紹介しました。PHP チュートリアルに興味のある友人に役立つことを願っています。