Smarty

Smarty
開発元 Monte Ohrt, Messju Mohr
最新版
4.1.1 / 2022年5月17日 (2年前) (2022-05-17)[1]
リポジトリ ウィキデータを編集
プログラミング
言語
PHP
種別 テンプレートエンジン
ライセンス LGPL
公式サイト www.smarty.net
テンプレートを表示

Smartyは、PHPで実装され、主にPHPアプリケーションで使用されるテンプレートエンジンである。テンプレート自体のキャッシュ機能を有している。ライセンスはLGPL

Smartyのテンプレート

[編集]

{$title_text|escape} {$body_html} この{$title_text}や{$body_html}に割り当てるにはPHP側で:

$smarty->assign('title_text', '文字列'); 

と記述する必要がある。

<!DOCTYPE html> <html lang="ja"> <head>    <meta charset="utf-8">    <title>{$title_text|escape}</title> </head>  <body> {* これはコメントです。コンパイル時にはHTML出力されません。 *} {$body_html} </body> <!-- これはコメントです。コンパイル時にはHTML出力されません。 --> </html> 

特徴

[編集]
  • 高速に動作する[2]
  • 独自の関数や修飾子を拡張可能[2]
  • テンプレートの継承[2]

バージョン2からバージョン3への変更点

[編集]

バージョン2では以下のメンバ変数がpublicになっておりアクセスできるようになっているが、バージョン3からはprotectedになっていてアクセスできないようになっている:

$template_dir $config_dir $plugins_dir $cache_dir $compile_dir 

その代わり以下のプロパティやメソッドを使うことでバージョン2と同じようになる:

TemplateDir ConfigDir PluginsDir CompileDir CacheDir ・public function setTemplateDir($template_dir, $isConfig = false) 引数:<$template_dir>テンプレートソースのディレクトリ    <$isConfig> config_dir を使うかどうかの指定(true:使用する false:使用しない) ・public function setConfigDir($config_dir) 引数:<$config_dir> 設定ファイルのディレクトリ ・public function setPluginsDir($plugins_dir) 引数:<$plugins_dir> プラグインのディレクトリ ・public function setCompileDir($compile_dir) 引数:<$compile_dir>コンパイル済みテンプレートを貯めておくためのディレクトリ ・public function setCacheDir($cache_dir) 引数:<$cache_dir> テンプレートのキャッシュを貯めておくためのディレクトリ 

脚注

[編集]

関連項目

[編集]
  • Twig - Symfonyで採用されている同様のテンプレートエンジン

外部リンク

[編集]