静的 Web サイト テンプレート フレームワーク
まず、以前と同様に、ページのすべての共通要素とページ全体のレイアウトのテンプレート ファイルを作成し、すべてのページから共通部分を削除して、ページ コンテンツのみを残し、各ページに 3 行を追加します。
Hello
Welcome
Hope you like this website
?>
このメソッドは基本的に、前述したさまざまな問題を解決します。ファイルには現在 PHP コードが 3 行しかなく、その中にはテンプレートを直接参照していないため、このコードを変更する可能性は非常に低いです。また、HTML コンテンツは PHP マークアップの外側にあるため、特殊文字の処理に問題はありません。これら 3 行の PHP コードをすべての静的 HTML ページに簡単に追加できます。
require 関数は、必要なテンプレート関連のすべての PHP コードを含む PHP ファイルを導入します。 pageStart 関数はテンプレート オブジェクトとページ タイトルを設定し、pageFinish 関数はテンプレートを解析して結果を生成し、ブラウザに送信します。
これはどのようにして達成されるのでしょうか? pageFinish 関数が呼び出されるまで、ファイル内の HTML がブラウザに送信されないのはなぜですか?答えは、ブラウザーに出力されたコンテンツをバッファーにインターセプトできるようにする PHP 4 の新機能にあります。 prepend.php の具体的なコードを見てみましょう。
require(class.FastTemplate.php);
function pageStart($title = ) {
GLOBAL $tpl = new FastTemplate(.) ;
$tpl->define( array( main => main.htm,
leftnav=> leftnav.htm ) ); $ タイトル);
ob_start();
関数 pageFinish() {
$tpl;
$tpl->assign(CONTENT, $content); tpl ->parse(HEADER, header);
$tpl->parse(LEFTNAV, leftnav);
$tpl->FastPrint(MAIN);
http://www.bkjia.com/PHPjc/531759.html
www.bkjia.com
true
http://www.bkjia.com/PHPjc/531759.html
技術記事
静的 Web サイト テンプレート フレームワーク まず、以前と同様にすべてのページの共通要素とページ全体のレイアウトのテンプレート ファイルを作成し、すべてのページから共通部分を削除して...;