Smarty(テンプレートエンジン)
| スマーティ | |
|---|---|
![]() | |
| 開発者 | モンテ・オールト、メッジュ・モール、ウーヴェ・テュース |
| 初回リリース | 2000年[1] |
| 安定版リリース | 5.7.0 [2] / 2025年11月19日 |
| リポジトリ |
|
| 書かれた | PHP |
| タイプ | テンプレートエンジン |
| ライセンス | LGPL |
| Webサイト | www.smarty.net |
SmartyはPHPで書かれたウェブテンプレートシステムです。Smartyは主に関心の分離のためのツールとして推奨されています。[3] Smartyは、ウェブページのフロントエンドとバックエンドを個別に変更できるようにすることで、コンパートメント化を簡素化することを目的としています。理想的には、これによりコストが削減され、ソフトウェアメンテナンスに関連する労力が最小限に抑えられます。
Smartyは、ドキュメント内に特別なSmartyタグを配置することでWebコンテンツを生成します。これらのタグは処理され、他のコードに置き換えられます。タグは、テンプレート区切り文字で囲まれたSmartyのディレクティブです。これらのディレクティブには、ドル記号($)で示される変数、関数、論理式、ループ文などを使用できます。Smartyを使用すると、PHPプログラマーはSmartyタグを使用してアクセスできるカスタム関数を定義できます。
Smartyの例
Smarty は PHP と HTML を分離しているので、2 つのファイルが存在します。1 つはプレゼンテーション コード (Smarty 変数とタグを含む HTML テンプレート) を含み、次のようになります。{$title_text|escape} {$body_html}
<!DOCTYPE html> < html lang = "en" > < head > < meta charset = "utf-8" > < title > { $title_text | escape } </ title > </ head >< body > { * これは HTML ソースには表示されない小さなコメントです * } { $body_html } </ body > <!-- これは HTML ソースに表示される小さなコメントです --> </ html >上記の Smarty テンプレートを使用するビジネス ロジックは次のようになります。
'SMARTY_DIR' 、'smarty-2.6.22/'を定義します。SMARTY_DIRに' Smarty.class.php'をrequire_onceします。 $smarty = 新しい Smarty (); $smarty -> template_dir = './templates/' ; $smarty -> compile_dir = './templates/compile/' ;$smarty -> assign ( 'title_text' , 'TITLE: これは Smarty の基本的な例です...' ); $smarty -> assign ( 'body_html' , '<p>BODY: これは assign() を使用して設定されたメッセージです</p>' );$smarty -> display ( 'index.tpl' );さらに読む
- Hasin Hayder、JP Maia、Lucian Gheorghe (2006). Smarty PHP テンプレートプログラミングとアプリケーション. ISBN 978-1-904-81140-4。
参照
参考文献
- ^ 「2000年8月8日に追加されたREADMEを示すCVSログ」。php.net 。 2025年10月6日閲覧。
- ^ “リリース 5.7.0”. 2025年11月19日. 2025年11月21日閲覧。
- ^ Parr, Terence John (2004).テンプレートエンジンにおける厳密なモデル・ビュー分離の強制. 第13回国際ワールドワイドウェブ会議議事録. ISBN 1-58113-844-X。
外部リンク
- 公式サイト
