PHP の世界でテンプレート エンジンを語るとき、Smarty から始めることは避けられません。
これは非常に愚かですが、少し公式なテンプレート エンジンです。
私のような正義感と革新性を持った人がいなかったら。
PHP についての美しい空想に満ちた、働き盛りの若者がどれだけの数の若者たちを毒し続けることになるのか、私にはわかりません。
1. 文法
アーティストが {foreach key=key item=item from=$contact} のような構文を学べると本当に思いますか
でも彼らは学ぶことができません$item) { ?>?
そして {if $name eq "Fred" or $name eq "Wilma"}
は まず第一に、私はアーティストが Smarty 構文を学ぶことについて常に懐疑的です。少なくとも私はこれまで長年仕事をしてきましたが、Smarty 構文を知っている人に会ったことがありません。
アーティストが学ぶ意欲があるとしても、なぜ学ばないのでしょうか。彼に本物の PHP の文法を教えているのではなく、自分でも理解できない「賢い言語」を教えなければなりません
2. 視覚化
ページがアーティストからあなたのものに渡されるとき手をかけて、その完璧な Web ページにその嫌な外観を追加します。Smarty コードです。
その後、Dreamweaver で、それらのページがどれだけ醜くなったか真剣に観察しましたか?
画像はまだ表示されますか? CSSはまだ存在しますか?含めるのは言うまでもありません。そして、変化を起こす時期が来たときはどうでしょうか?まだ一目でそれとわかるでしょうか?
これらが解決できない場合、いわゆるテンプレート エンジンがどのようにして「強力」という言葉に値するのでしょうか?
3....
ここでは Smarty を例として取り上げますが、他のテンプレート エンジンも同様であることがわかります。全員が独自のテンプレート言語を発明することに忙しく、本当に解決する必要がある問題は回避されています。
いわゆるテンプレート エンジンといわゆるパワーはすべて嘘つきであることがわかりましたか?夜、何度も目が覚めた、この残酷な事実を伝えられないだけで、自分の負担がさらに重くなったような気がする。
そこで、私は悲しみに暮れ、忙しいスケジュールの合間を縫って、この tmd_tpl という名前の実際のテンプレート エンジンを作成しました。
今は強力ではないかもしれませんが、将来的には強力であることが不可欠です。
・tmd_tpl の使用に関する入門チュートリアル:
次に、tmd_tpl の使用方法を学びましょう。プロセスは他のテンプレート エンジンとあまり変わりません。
1. テンプレート エンジンを初期化します
コードをコピーします コードは次のとおりです:
//Include tmd_tplrequire '../tmdphp/tmd_tpl.php'; // tmd_tpl が存在するパスに変更してください
// tmd_tpl をインスタンス化します
$ TPL = new tmd_tpl ();
// 以下は tmd_tpl の構成です
// スラッシュで終わるテンプレート ディレクトリを指定します
$TPL->tpl_dir = './tpl/';
// テンプレート ファイルの拡張子を指定します。
// サフィックスとして php を使用することをお勧めします。これは、Dreamweaver の PHP コードに強調表示効果があるためです。
// さらに、プレビューのために Chrome ブラウザで直接開くことができ、IE で開くとダウンロードを求めるメッセージが表示されます。
$TPL->tpl_ext = '.tpl.php';
// コンパイルしたテンプレートを保存するディレクトリを指定
$TPL->cache_dir = './tpl_c/'; >/ / コンパイルされたファイルの有効期間を設定します (単位: 秒)
$TPL->cache_time = 0; // 0 は毎回再コンパイルすることを意味し、-1 は期限切れにならないことを意味します、
// カスタムの定期的な置換
$TPL->my_rep = array(
'~(../) static/~' => '/proj-1/static/',
// ↑プロジェクトのアクセスアドレスの場合http://localhost/proj-1/
// カスタム置換には多くのテクニックがありますが、エントリの段階では書きません
2. 割り当てとマージ ページを表示
コードをコピー
コードは次のとおりです: コードをコピーします コードは次のとおりです: // テンプレート内の変数を呼び出します
// 通常の割り当て
$TPL->assign('site_name', '王道中强流');
$TPL->assign('site_intro', '私はPHP プログラマー、tmd_tpl の作者。 ');
// 配列をサポート
$blog = array(
'title' => 'TMD の Smarty に移動',
'content' => ; ' tmd_tpl の使用方法を説明する前に、まず車輪の再発明が必要な理由について話したいと思います。
次に、世界中のいわゆる PHP テンプレート エンジンがどのような貢献をしてきたのかについて説明します。
PHP の世界のテンプレート エンジンについては、Smarty から始めるのは必然です。
これは非常に愚かですが、少し公式のテンプレート エンジンです。
私のような正義感と革新的な精神を持った人がいなかったら。情熱的な若者たちが名乗り出ています。
PHP についての美しい空想に満ちた働き盛りの若者が今後も PHP に毒され続けるかわかりません。',
// 現在、サポートされているのは 2 つだけです。 -次元配列、一般的には 2 次元配列で十分です。
'info' => array(
'addtime' => '2012.3.11',
'author' => '王忠強',
'weibo' => ; 'http://t.qq.com/teeband',
),
);
$TPL->assign('ブログ') , $blog);
// テンプレート内 デモをループしてこの配列を出力します
$links = array(
'Script Home' => 'http://www.jb51.net',
'マテリアル ワールド' => 'http://sc.jb51.net/'、
'Baidu' => 'http://www.baidu.com/'、
'ウェブサイト ナビゲーション' = > 'http://www.hao123 .com'、
'傷つくわけにはいかない' => 'http://www.3buqi.com/'、
' こんにちは! > 'http://www.hei123.net/' ,
);
$TPL->assign('links', $links); ');
3. テンプレート静的ファイルのディレクトリ構造
4. テンプレート
// 配列{$blog.title}
// 二次元配列
// これらのテンプレートエンジンの基本的な機能は tmd_tpl でも同様です。
// ただし、ループと判定に関しては、tmd_tpl ビューは PHP コードを直接使用します。これを行うためにテンプレート言語を作成する必要はありません。
foreach ($links as $name => $url) {
?>
}
?>// 関数に関しては、現在の tmd_tpl 、弱点です。
// {$blog.content|nl2br} 形式はまだサポートされていません。
{:nl2br( $blog['content'] )} // これが唯一の方法です
=nl2br( $blog['content'] )?> // またはこれ
// 自動的に
// 戻り値のない関数が呼び出された場合は
{~print_r( $blog )}
tmd_tpl の本当の革新はパスの変換にあります。
コードをコピー コードは次のとおりです:
// 画像を挿入
// CSS の導入
// JS を呼び出す
// ページをインクルード
・tmd_tpl テンプレート エンジンを使用した後
http 経由でのアクセスの効果を見る
> ここをクリックしてくださいDreamweaver の場合 (フロントエンドスタッフはこれを行うことができます~)
Chromeの場合(含まれているページのみ表示できません)
・tmd_tplを使用しない場合は、DiscuzとDedeCMSのテンプレートを見てみましょう。
ディスカッション!
デデCM
これで、いわゆる強力なテンプレート エンジンがいかにばかげているかがわかりましたね?
何を待っていますか?歴史を変える時が来ました。マウスを手に持ってクリックし、第 2 世代の PHP テンプレート エンジン tmd_tpl をダウンロードしてください。

ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

MinGW - Minimalist GNU for Windows
このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。

MantisBT
Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。

VSCode Windows 64 ビットのダウンロード
Microsoft によって発売された無料で強力な IDE エディター

EditPlus 中国語クラック版
サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

WebStorm Mac版
便利なJavaScript開発ツール
