ホームページ >バックエンド開発 >PHPチュートリアル >PHPを使って静的Webサイト用のテンプレートフレームワークを作成する(3)_PHPチュートリアル

PHPを使って静的Webサイト用のテンプレートフレームワークを作成する(3)_PHPチュートリアル

WBOY
WBOYオリジナル
2016-07-21 16:06:28851ブラウズ

ページ要素の重複を避ける


「これはとても良いことだ」と思うかもしれません。「私の Web サイトは主に多数の静的ページで構成されています。これで、すべてのページからそれらの共通部分を削除できますが、これは非常に困難です」 「これらの共通部分を更新するのは非常に面倒です。将来的には、テンプレートを使用して管理しやすい統一されたページ レイアウトを作成できます。しかし、「静的なページが多数ある」という問題は、それほど単純ではありません。


上記の例を考えてみましょう。この例には実際には example.php ページが 1 つしかありません。Web サイト全体のすべてのページを生成できるのは、URL 内のクエリ文字列を使用してデータベースなどの情報ソースからページを動的に構築しているためです。


私たちのほとんどは、必ずしもデータベースをサポートしていない Web サイトを運営しています。私たちの Web サイトの大部分は静的なページで構成されており、PHP を使用して検索エンジンやフィードバック フォームなどの動的な機能をあちこちに追加しています。では、この種の Web サイトにテンプレートを適用するにはどうすればよいでしょうか?


最も簡単な方法は、各ページの PHP ファイルをコピーし、PHP コード内のコンテンツを表す変数を各ページの適切なページ コンテンツに設定することです。たとえば、home、about、product という 3 つのページがあるとします。それぞれを生成するために 3 つのファイルを使用できます。これら 3 つのファイルの内容は次のようになります。



// home.php
require('class.FastTemplate.php');
$tpl = new FastTemplate('.'); tpl->define( array( 'main' => 'main.htm',
'header' => 'header.htm',
'leftnav' => 'leftnav.htm' ) ); $content = "

ようこそ



このウェブサイトを気に入っていただければ幸いです

"; 'CONTENT', $content);
$tpl->parse('HEADER', 'header');
$tpl->parse('LEFTNAV', 'leftnav'); 'MAIN', 'main');
$tpl->FastPrint('MAIN')?>



; 明らかに、このアプローチには 3 つの問題があります。テンプレートを含むこの複雑な PHP コードを複製すると、共通のページ要素を複製するだけでなく、ファイルに HTML と PHP コードが混在するため、コンテンツ変数に値を割り当てることが非常に困難になります。多数の特殊文字。


この問題を解決する鍵は、PHP コードと HTML コンテンツを分離することです。ファイルからすべての HTML コンテンツを削除することはできませんが、PHP コードの大部分を移動することはできます。




http://www.bkjia.com/PHPjc/315434.html

www.bkjia.com

tru​​e

http://www.bkjia.com/PHPjc/315434.html技術記事ページ要素の重複を避ける 「それはとてもいいことだ」と思うかもしれません。「私の Web サイトは、ほとんどが多数の静的ページで構成されています。これで、すべてのページから共通部分を削除できます...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。