ホームページ php教程 php手册 PHP FastTemplate テンプレートの学習例

PHP FastTemplate テンプレートの学習例

Jun 21, 2016 am 09:10 AM
gt main quot

テンプレート

PHP を一度も使用したことがない場合は、まずこれを見てください。もちろん、すでに PHP を知っている場合でも、PHP4 ユーザー マニュアルは必要です :)。また、HTML構文マニュアルも当然必須です。 。 。 。 。 。 。 。 。 。

ウェブサイトの開発プロセス中に、修正の問題によく直面しますか?レイアウトの小さな変更が原因で、何十万ものファイルを再処理する必要があるのでしょうか?残念ながら、コンテンツとプレゼンテーションを分離できるのは素晴らしいことですが、これは私たちが待ち望んでいたものです。残念ながら、この問題に対処するために使用される XML はまだ完全には成熟していません。他に方法はありませんか?ことわざにあるように、物事は死んでいますが、人は生きています。今日学習する PHP ライブラリは、この問題にある程度対処するのに役立ちます。 :))

FastTemplateとは何ですか? PHP 言語に関しては、これは PHP ライブラリであり、その起源に関しては、同じ名前の Perl パッケージから派生したものであり、全体の外観を変更できる実用的なツールです。数秒でサイトにアクセスできます。最も一般的な言語では、これはテンプレートであり、DreamWaver のテンプレートに似ています。 FastTemplate という言葉が頭の中に疑問符として浮かんでいませんか?それとも感嘆符?それとも終点ですか? (編集者:くそー、ここで原稿料を騙し取っているのか、バカだ!) 忘れてください、いくらなんでも、それが良いことだということだけ知っていればいいのです:)

まず、使う前に。このライブラリは、もちろん最初にダウンロードする必要があります。皆さん、次の URL からダウンロードできます。 http://www.thewebmasters.net/php/ (このサイトのダウンロード アドレスは次のとおりです: http://www.phpe.net /downloads/1.shtml)。ダウンロード後、Web サーバー上のディレクトリに解凍します。 解凍されたディレクトリ構造は次のとおりです。

FastTemplate-1.1.0/
FastTemplate-1.1.0/README FastTemplate-1.1.0/class.FastTemplate.php3 < - このファイルは最も重要であり、ライブラリ ファイル、つまりコアです。
FastTemplate-1.1.0/example_1.phtml < - 例
FastTemplate-1.1.0/example_2.phtml < - 2 番目の例
FastTemplate-1.1.0/example_3.phtml < - 3 番目の例1.1.0/dynamic_example.phtml < - 4 番目の例
FastTemplate-1.1.0/docs/ < - ドキュメント ディレクトリ
FastTemplate-1.1.0/docs/FastTemplate.3 < - Unix マニュアル ページ
FastTemplate-1.1 .0/docs/FastTemplate.html < - HTML ドキュメント
FastTemplate-1.1.0/templates/ < - テンプレートのサンプルのディレクトリ
FastTemplate-1.1.0/templates/begin.tpl
FastTemplate-1.1 /header.tpl
FastTemplate-1.1.0/templates/main.tpl
FastTemplate-1.1.0/templates/row.tpl
FastTemplate-1.1.0/templates/test.tpl
FastTemplate-1.1.0/templates/footer .tpl
FastTemplate-1.1.0/templates/htaccess.tpl
FastTemplate-1.1.0/templates/middle.tpl
FastTemplate-1.1.0/templates/table.tpl
注、このディレクトリは php である必要があります。プログラムは、つまり、php.ini の include ディレクトリにアクセスできます。 php4 を使用してプログラミングしている友人の皆さん、このライブラリはまだ直接使用できず、手動でいくつかの修正を加える必要があることに注意してください。待って、以下を見てください。 php3 の読者はそれほど心配する必要はありません。現在提供されているいくつかのサンプルを試すことができます (ただし、これらのサンプルのサフィックスはすべて phtml です。Web を設定できない場合は、変更してみてください。サフィックス名を指定すると機能するはずです。試してみないと保証できません。)次に、php4 兄弟は次の変更を加えないとこのライブラリが使用できなくなりますので注意してください。 !

--- class.FastTemplate.php3 1999 年 6 月 27 日日曜日 13:44:47
+++ php4.FastTemplate.php3 1999 年 7 月 20 日火曜日 10:49:25
@@ -196,8 +196,10 @@
settype($val,"string");
}

- $template = ereg_replace("{$key}","$val","$template")
- //$template = str_replace("{ $key}","$val","$template");
+ // php4 は '{$' の組み合わせを好みません。
+ $key = '{'."$key".'}';
+ $template = ereg_replace("$key","$val","$template");
+ //$template = str_replace("$key","$val","$template"); }

@@ -410,7 +412,7 @@
}
if($end)
{
- $newParent .= "{$MacroName}
"; + $newParent .= '{'." $MacroName}
";
}
// 次の行をお願いします
if($end) { $end = false; }

誰もがテキスト エディターを使用して class.FastTemplate.php3 ファイルを開き、上記の部分を見つけます。 「-」マイナス記号はこの行を削除することを意味し、「+」プラス記号はこの行を追加することを意味します。また、Windows システムを使用している友人は注意してください。また、少し変更する必要があります。以下の $win32 変数の値を true に変更します。変更しなくても、動作しなくても私を責めないでください。

var $WIN32 = true; // これが WIN32 サーバーの場合は true に設定します

変更を加えた後、彼の例を試すことができます。 どうやって?出来た。ふふふふ~~~、地蔵様は嘘をつきませんよ。

OK、このライブラリを使用する準備ができました。次の学習の準備をしましょう:)

このライブラリの使い方は?まず、このライブラリをインクルードする必要があります。言い換えれば、「class.FastTemplate.php3」をインクルードしてから?ははは...そして、私にもわかりません! (編集者「やあ!探してます!」)あ、あ…!ごめんなさい、思い出しました(地蔵菩薩が編集者に侮辱された後)。次に、このライブラリの使用方法を学びます。ここで、まず仮定を立てます。

ページは多くの小さな部分で構成されており (例: 各 Web サイトには列ナビゲーションなど)、それぞれの小さな部分には一意の識別子があります (例: 各列を名前)

まず、誰もがこのライブラリの基本的な使い方をできるだけ早く学べるように、このライブラリに付属する example_1 を例として取り上げます ;) ただし、これらのファイルはサーバー上にあることに注意してください。解凍するときは相対パスに従って場所を保存する必要があります。ガールフレンドの誕生日を忘れないように注意してください。はは~~~~

<

// FastTemplate のデモ #1 - man ページの例

Header("Content-type: text/plain"); include("class.FastTemplate. php3");
$tpl = new FastTemplate("./templates");

$tpl- >define(
array(
main = > "main.tpl",
table = > "table.tpl ",
row = > "row.tpl"
)
);

$tpl- >assign( array( TITLE = > "FastTemplate Test") );

for ($n=1; $n < = 3; $n++)
{ $Number = $n;
$tpl- >assign(
NUMBER = > $Number,
BIG_NUMBER = > $BigNum )
);
$tpl- >parse(ROWS,".row")
}

$tpl- >parse("table","main")); $tpl- >FastPrint();

; < 名前: main.tpl > ; {タイトル} < /ヘッド >
< /html < .tpl -- >
; < 名前: table.tpl -- > {ROWS} <終了: table.tpl -- > !--
<{NUMBER}< >{BIG_NUMBER}< /td >
< /tr > !-- END: row.tpl -- > 前述のように、上記の .php3"; この場合、テンプレートが定義されているディレクトリは $tpl = new FastTemplate("./templates"); 注意してください。私は Windows システムで実行しているため、「./templates」を使用します。Linux または UNIX では、状況に応じて設定が異なる場合があります。次に、さまざまなテンプレートに対応する次の行列配列を定義します。 $tpl- >define( array( main = > "main.tpl", table = > "table.tpl", row = > "row.tpl" ) ); は、このクラスの関数です。その構文は次のとおりです。 name テンプレートのファイル名が表示されます。皆さんも、授業を利用する際には欠かせないステップですので、これがないと、誕生日プレゼントを持たずに彼女の誕生日パーティーに行くのと同じことになりますので、ご注意ください。 今!重要な、最も個人的なことはここにあります! assign((キー,値ペア) または assign(array(キー値ペア))) この関数は、テンプレートで定義した識別子を、Web ページ上で実際に必要なものとして定義します。たとえば、$tpl-> のようになります。上記 ;assign( array( TITLE = > "FastTemplate Test") ); この文では、テンプレート main.tpl の {TITLE} を FastTemplate Test に置き換えます。理解できない人は、上記のコードを見てください。 . ! 次に、parse(RETURN, FileHandle(s)) は、定義されたテンプレートの定義を別のテンプレート ファイルに挿入します。
については、($n= について) をよく理解すると理解できると思います。 1; $n $Number = $n*10;
array(
NUMBER = > BIG_NUMBER = > parse(MAIN, "main"); // 標準
$tpl- >parse(MAIN, array ( "table", "main") ) // シンプル
$tpl- >parse(MAIN, ".row "); //
を追加する
その中で、3 番目のデータが最も興味深いです。笑、理解できないかもしれません。詳しく調べてみましょう。上のソースコードを見てみましょう。結局のところ、プログラミングには理解できるだけで説明できないことがたくさんあります。(英語の説明を以下に添付します。Jizang は怠けて翻訳したくないわけではありません。)理解してください、

通常バージョンでは、「main」という名前のテンプレートがまだロードされていない場合はロードされ、すべての変数が補間され、結果は、値 MAIN として FastTemplate に保存されます。変数 '{MAIN}' が後のテンプレートに表示される場合、解析された「メイン」テンプレートの値に補間されます。これにより、簡単にネストすることができます。テンプレート、これは複合スタイルにつながります

複合スタイルは、テンプレートを簡単にネストできるように設計されています。

$tpl- >parse(MAIN, "table"); - >parse(MAIN, ".main") ;

// と同じ:

$tpl- >parse(MAIN, array("table", "main")

// これform は関数呼び出しを保存し、コードをよりクリーンにします

複合フォームを使用する場合、最初のテンプレート以降の各テンプレートには、結果を解析する変数が含まれている必要があることに注意することが重要です。上の例では、'main. ' table' の解析結果が保存される場所であるため、'main' に変数 '{MAIN}' が含まれていない場合、'table' の解析結果は失われます。追加スタイルを使用すると、解析された結果をターゲット変数に追加できます。これは、定義されたファイル ハンドルの前に、このテンプレートの解析結果を追加するように FastTemplate に指示します。動的な行数 - データベース クエリからのデータなど)

最後に、FastTemplate ライブラリは出力に FastPrint(HANDLE) を使用します。

$tpl- >FastPrint();

上記の手順を経て、FastTemplate ライブラリの使用プロセスを明確に理解できましたか? Ji Zang は、皆さんにとって役に立つかどうかを確認するために、上記のプロセスを要約してみます:

最初: include を使用してライブラリを追加します

2 番目: クラス変数を定義します。上記の例では、$tpl です

もう一度: $tpl = new FastTemplate("./templates"); などのさまざまな最小要素を定義します

次に: parse 関数を使用してさまざまな最小要素を結合します

最後に: 出力に FastPrint() を使用します









このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、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)

Huawei GT3 ProとGT4の違いは何ですか? Huawei GT3 ProとGT4の違いは何ですか? Dec 29, 2023 pm 02:27 PM

多くのユーザーはスマートウォッチを選ぶときにファーウェイブランドを選択しますが、その中でもファーウェイ GT3pro と GT4 は非常に人気のある選択肢であり、多くのユーザーはファーウェイ GT3pro と GT4 の違いに興味を持っています。 Huawei GT3pro と GT4 の違いは何ですか? 1. 外観 GT4: 46mm と 41mm、材質はガラスミラー + ステンレススチールボディ + 高解像度ファイバーバックシェルです。 GT3pro: 46.6mm および 42.9mm、材質はサファイアガラス + チタンボディ/セラミックボディ + セラミックバックシェルです。 2. 健全な GT4: 最新の Huawei Truseen5.5+ アルゴリズムを使用すると、結果はより正確になります。 GT3pro: ECG 心電図と血管と安全性を追加

コンピューターメインってどういう意味ですか? コンピューターメインってどういう意味ですか? Jan 19, 2021 pm 02:57 PM

コンピュータメインは、コンピュータソフトウェアのメインメニューまたはメインカテゴリを表します。一部のデスクトップ ソフトウェアには main という基本的な操作メニューを含むメイン メニューがあり、開発言語 Java や C 言語などの高級言語では、プログラムの入り口となる main クラスが存在します。実行。プログラムには複数の関数を含めることができますが、main() 関数は 1 つだけです。

修正: Windows 11 で Snipping ツールが機能しない 修正: Windows 11 で Snipping ツールが機能しない Aug 24, 2023 am 09:48 AM

Windows 11 で Snipping Tool が機能しない理由 問題の根本原因を理解すると、適切な解決策を見つけるのに役立ちます。 Snipping Tool が正しく動作しない主な理由は次のとおりです。 フォーカス アシスタントがオンになっている: これにより、Snipping Tool が開かなくなります。破損したアプリケーション: 起動時にスニッピング ツールがクラッシュする場合は、破損している可能性があります。古いグラフィック ドライバー: 互換性のないドライバーは、スニッピング ツールに干渉する可能性があります。他のアプリケーションからの干渉: 実行中の他のアプリケーションが Snipping Tool と競合する可能性があります。証明書の有効期限が切れています: アップグレード プロセス中のエラーにより、この問題が発生する可能性があります。これらの簡単な解決策は、ほとんどのユーザーに適しており、特別な技術知識は必要ありません。 1. Windows および Microsoft Store アプリを更新する

Linux カーネルには main 関数がありますか? Linux カーネルには main 関数がありますか? Mar 28, 2023 am 10:45 AM

Linux カーネルには main 関数があります。main 関数はプログラムのエントリ ポイントであり、main はアプリケーションとオペレーティング システムの間で合意されたインターフェイス名であるため、Linux の各アプリケーションの最初の関数は main でなければなりません。

iPhoneでApp Storeに接続できないエラーを修正する方法 iPhoneでApp Storeに接続できないエラーを修正する方法 Jul 29, 2023 am 08:22 AM

パート 1: 最初のトラブルシューティング手順 Apple のシステムステータスを確認する: 複雑な解決策を掘り下げる前に、基本から始めましょう。問題はデバイスにあるのではなく、Apple のサーバーがダウンしている可能性があります。 Apple のシステム ステータス ページにアクセスして、AppStore が適切に動作しているかどうかを確認してください。問題があれば、Apple が修正してくれるのを待つしかありません。インターネット接続を確認します。「AppStore に接続できません」問題は接続不良が原因である場合があるため、安定したインターネット接続があることを確認してください。 Wi-Fi とモバイル データを切り替えるか、ネットワーク設定をリセットしてみてください ([一般] > [リセット] > [ネットワーク設定のリセット] > [設定])。 iOS バージョンを更新します。

MAINとはどのようなインターフェースですか? MAINとはどのようなインターフェースですか? Mar 06, 2023 am 11:50 AM

MAIN はメイン アンテナ インターフェイス、aux は補助アンテナ インターフェイスです。ほとんどのインテル ワイヤレス ネットワーク カード マザーボードには番号 1、2、および 3 のみが付いています。識別されるメイン番号は 1 (灰色の線に接続) で、Aux 番号は2本(黒線に接続)、3本の場合は通常は白線に接続します。

php提交表单通过后,弹出的对话框怎样在当前页弹出,该如何解决 php提交表单通过后,弹出的对话框怎样在当前页弹出,该如何解决 Jun 13, 2016 am 10:23 AM

php提交表单通过后,弹出的对话框怎样在当前页弹出php提交表单通过后,弹出的对话框怎样在当前页弹出而不是在空白页弹出?想实现这样的效果:而不是空白页弹出:------解决方案--------------------如果你的验证用PHP在后端,那么就用Ajax;仅供参考:HTML code

Javaでのmain関数の用途は何ですか Javaでのmain関数の用途は何ですか May 04, 2023 am 09:34 AM

main 関数の一般的な書き方は次のとおりです: publicstaticvoidmain(String[]args){…} これらのキーワードの機能を以下に説明します: (1) public キーワード、これは理解しやすいです。main 関数を public で宣言すると、次のようになります。他のクラスがこの関数にアクセスできるようにします。 (2) static キーワードは、main 関数が静的関数であることをコンパイラに伝えます。つまり、main 関数のコードは静的記憶領域に格納されます。つまり、このコードはクラス定義後にすでに存在します。 main() メソッドが static 修飾子を使用しない場合、コンパイル時にエラーは発生しませんが、プログラムを実行しようとするとエラーが報告され、プロンプトが表示されます。

See all articles