ホームページ バックエンド開発 PHPチュートリアル PHP_PHP チュートリアルを使用して静的ページを生成する

PHP_PHP チュートリアルを使用して静的ページを生成する

Jul 13, 2016 am 10:58 AM
php 役職 存在する 場所 記事 方法 友人 生成する システム 静的 ページ

PHP で静的記事システムを生成する方法について多くの友人がさまざまな場所で投稿しているのを見かけました。私も以前そのようなシステムを構築したことがありますので、参考のためにいくつかの意見を共有したいと思います。さて、最初にいくつかの基本概念を確認しましょう。

1. PHP スクリプトと動的ページ。

PHP スクリプトは、埋め込みなどの方法で HTML ファイルと混合したり、クラスや関数のカプセル化などの形式のテンプレートの形式でユーザー要求を処理したりできる、サーバー側のスクリプト プログラムです。いずれにせよ、基本はこれです。クライアントが特定のページをリクエストします -----> WEB サーバーは、指定された対応するスクリプトを処理に導入します -----> スクリプトはサーバーにロードされます ----->サーバーによってスクリプトはブラウザによって解析され、HTML 言語形式が形成されます----> 解析された HTML ステートメントはパッケージの形式でブラウザに返されます。このことから、ページがブラウザに送信された後は PHP が存在せず、HTML ステートメントに変換および解析されたことがわかります。実際、クライアントのリクエストは動的ファイルであり、PHP はそれを対応するページに解析してブラウザに送り返します。このページの処理方法は「動的ページ」と呼ばれます。

2. 静的ページ。

静的ページとは、サーバー側に実際に存在し、HTML、JS、CSS、およびその他のクライアント側スクリプトのみを含むページを指します。扱い方としては。クライアントは特定のページをリクエストします---> WEB サーバーは特定のページを確認してロードします---> WEB サーバーはそのページをパッケージの形式でブラウザに返します。このプロセスから、動的ページを比較して確認できます。動的ページは WEB サーバーの PHP パーサーで解析する必要があり、通常、HTML 言語情報パッケージを形成する前にデータベースに接続してデータベース アクセス操作を実行する必要がありますが、静的ページは解析したり接続したりする必要はありません。データベースに直接送信できるため、サーバーの負荷が大幅に軽減され、サーバーの負荷容量が向上し、ページを開く速度と Web サイト全体を開く速度が大幅に向上します。ただし、その欠点は、リクエストを動的に処理できないことと、ファイルが実際にサーバー上に存在する必要があることです。

3. テンプレートとテンプレート分析。

テンプレートは、コンテンツ HTML ファイルがまだ入力されていないことを意味します。例:

temp.html


{タイトル}

これは { file} ファイルのテンプレットです



PHP処理:

テンプレートテスト.php

$title = "Web ページ教育ネットワーク テスト テンプレート";
$file = "Webjxtest テンプルト、
作者:web@webjx.com";

$fp= fopen ("temp.html","r");
$content = fread ($fp,filesize ("temp.html"));
$content .= str_replace ("{ file}",$file,$content);
$content .= str_replace ("{ title}",$title,$content);

エコー$コンテンツ;
?>



テンプレート解析処理とは、PHPスクリプトを解析して処理した結果(コンテンツ)をテンプレートに埋め込む処理です。通常はテンプレート クラスの助けを借ります。現在、より一般的なテンプレート解析クラスには、phplib、smarty、fastsmarty などが含まれます。テンプレート解析処理の原則は、通常は置換です。また、判定やループなどの処理をテンプレートファイルに入れて解析クラスを使って処理することに慣れているプログラマもいますが、その代表的な応用が単純にループ処理であるブロック概念です。 PHP スクリプトはループの数、ループの方法などを指定し、テンプレート解析クラスがこれらの操作を実装します。

静的ページと動的ページの長所と短所を比較した後、PHP を使用して静的ファイルを生成する方法について説明します。

PHP による静的ページの生成とは、PHP の動的解析と HTML ページの出力を指すのではなく、PHP を使用して HTML ページを作成することを指します。同時に、HTML は書き込み不可能な性質があるため、作成した HTML が変更された場合は、削除して再生成する必要があります。 (もちろん、通常のルールを使用して変更することもできますが、個人的には、削除して再生成するよりも高速であると考えており、メリットはありません。)

仕事に戻る。 PHP のファイル操作関数を使用したことのある PHP ファンは、PHP にファイルを開くファイル操作関数 fopen があることを知っています。ファイルが存在しない場合は、作成してみてください。これは、PHP を使用して HTML ファイルを作成できる理論的基礎です。 HTML ファイルの保存に使用されるフォルダーに書き込み権限 (つまり、権限定義 0777) がある限り、ファイルを作成できます。 (UNIX システムの場合、Win システムは考慮する必要はありません。) 上記の例を例として、最後の文を変更して、test ディレクトリに test.html という名前の静的ファイルを生成するように指定すると、次のようになります。
$title = "Web ページ教育ネットワーク テスト テンプレート";
$file = "Webjxtest テンプルト、
作者:web@webjx.com";

$fp = fopen("temp.html","r");
$content = fread ($fp,filesize ("temp.html"));
$content .= str_replace ("{ file}",$file,$content);
$content .= str_replace ("{ title}",$title,$content);

// エコー $content;

$ファイル名 = "テスト/test.html";
$handle = fopen ($filename,"w") //ファイルポインタを開いてファイルを作成します
; /*
ファイルが作成され、書き込み可能かどうかを確認してください
*/
if (!is_writable ($ファイル名)){
die ("ファイル: ".$filename." を書き込むことができません。プロパティを確認して、もう一度試してください!");
}
if (!fwrite ($handle,$content)){ //ファイルに情報を書き込みます
die("ファイル生成".$ファイル名."失敗!");
}
fclose ($handle) //ポインタを閉じます

die ("ファイルの作成".$ファイル名."成功!");
?>

実際のアプリケーションにおける一般的な問題の解決策のリファレンス:

1. 記事リストの質問:

データベースにフィールドを作成し、ファイルが生成されるたびに、自動的に生成されたファイル名がデータベースに保存されます。静的ファイルが保存されている指定されたフォルダー内のページをポイントするだけです。 PHP 操作を使用して記事リストを処理し、文字列として保存し、ページの生成時にこの文字列を置き換えます。たとえば、ページ上の記事リストが配置されるテーブルと PHP 処理ファイルにマーク {articletable} を追加します。

$title = "Web ページ教育ネットワーク テスト テンプレート";
$file = "Webjxtest テンプルト、
作者:web@webjx.com";

$fp = fopen("temp.html","r");
$content = fread ($fp,filesize ("temp.html"));
$content .= str_replace ("{ file}",$file,$content);
$content .= str_replace ("{ title}",$title,$content);

//リスト生成開始
$リスト = '';
$sql = "記事から ID、タイトル、ファイル名を選択";
$query = mysql_query ($sql);
while ($result = mysql_fetch_array($query)){
$list .= ''.$result['title'].'
'

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/632014.html技術記事 PHP で静的記事システムを生成する方法について多くの友人がさまざまな場所で投稿しているのを見かけました。私も以前そのようなシステムを構築したことがありますので、参考までにいくつかの意見を共有したいと思います。さて、最初に確認しましょう...
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

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

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

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

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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

Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド Dec 24, 2024 pm 04:42 PM

PHP 8.4 では、いくつかの新機能、セキュリティの改善、パフォーマンスの改善が行われ、かなりの量の機能の非推奨と削除が行われています。 このガイドでは、Ubuntu、Debian、またはその派生版に PHP 8.4 をインストールする方法、または PHP 8.4 にアップグレードする方法について説明します。

CakePHP の日付と時刻 CakePHP の日付と時刻 Sep 10, 2024 pm 05:27 PM

Cakephp4 で日付と時刻を操作するには、利用可能な FrozenTime クラスを利用します。

CakePHP について話し合う CakePHP について話し合う Sep 10, 2024 pm 05:28 PM

CakePHP は、PHP 用のオープンソース フレームワークです。これは、アプリケーションの開発、展開、保守をより簡単にすることを目的としています。 CakePHP は、強力かつ理解しやすい MVC のようなアーキテクチャに基づいています。モデル、ビュー、コントローラー

CakePHP ファイルのアップロード CakePHP ファイルのアップロード Sep 10, 2024 pm 05:27 PM

ファイルのアップロードを行うには、フォーム ヘルパーを使用します。ここではファイルアップロードの例を示します。

CakePHP バリデータの作成 CakePHP バリデータの作成 Sep 10, 2024 pm 05:26 PM

Validator は、コントローラーに次の 2 行を追加することで作成できます。

CakePHP のロギング CakePHP のロギング Sep 10, 2024 pm 05:26 PM

CakePHP へのログインは非常に簡単な作業です。使用する関数は 1 つだけです。 cronjob などのバックグラウンド プロセスのエラー、例外、ユーザー アクティビティ、ユーザーが実行したアクションをログに記録できます。 CakePHP でのデータのログ記録は簡単です。 log()関数が提供されています

PHP 開発用に Visual Studio Code (VS Code) をセットアップする方法 PHP 開発用に Visual Studio Code (VS Code) をセットアップする方法 Dec 20, 2024 am 11:31 AM

Visual Studio Code (VS Code とも呼ばれる) は、すべての主要なオペレーティング システムで利用できる無料のソース コード エディター (統合開発環境 (IDE)) です。 多くのプログラミング言語の拡張機能の大規模なコレクションを備えた VS Code は、

CakePHP クイックガイド CakePHP クイックガイド Sep 10, 2024 pm 05:27 PM

CakePHP はオープンソースの MVC フレームワークです。これにより、アプリケーションの開発、展開、保守がはるかに簡単になります。 CakePHP には、最も一般的なタスクの過負荷を軽減するためのライブラリが多数あります。

See all articles