1

ウェブサイトのテンプレートを作成する方法が、それを行うための最良かつ最も動的な方法であるかどうかを確認したかっただけです。現在、ウェブサイトをプレイアウトしていますが、コンテンツを変更したい領域については、次のコードを使用しています。

<? 
 if (preg_match("/\W/",$page) || !file_exists("../$page.html")) {
  include("../home.html");
 }
 else {
  include("../$page.html");
 }
?>

次に、ナビゲーションは次のように言ってそのページにリンクします。

<a href="index.php?page=about">About</a>

これはPHPを使用してテンプレートを作成するための最良の方法ですか、それともより良い方法がありますか?お手伝いありがとう。

4

2 に答える 2

4

Web サイト テンプレートを作成するための最善または最も動的な方法はありません。

あなたができることは、経験や他の人から学ぶことだけです。

コードは、テンプレートを切り替える 1 つの方法です。いくつかの即時の改善点は次のとおりです。

  • || の代わりに && を使用 AND 演算子の短絡特性のためです。ページが一致しない場合、ファイル チェックを行う必要はありません。

  • 配列ルックアップ テーブルを使用して、ページの値をファイル名テンプレート (例: 'home'->'homepage.html' など) にマップします。これは主に、外部入力がファイル パスに使用される深刻な悪用を防ぐのに役立ちます。

  • 存在しないテンプレートとのリンクがあるため、ファイル チェックを行わないでください。

于 2012-05-31T09:02:43.737 に答える
1

このようにゼロから作成するのではなく (IMO はそれほど美しくも動的でもありません)、フレームワークがどのようにそれを行うかを調べたほうがよいでしょう。ほとんどのフレームワークには、(優れた、美しい、動的、スケーラブルなど) テンプレート メカニズムがあり、純粋な PHP またはサード パーティ エンジンを使用しています。

于 2012-05-31T09:10:06.533 に答える