Smarty
開発元 | Monte Ohrt, Messju Mohr |
---|---|
最新版 | 4.1.1 / 2022年5月17日[1] |
リポジトリ | |
プログラミング 言語 | PHP |
種別 | テンプレートエンジン |
ライセンス | LGPL |
公式サイト | www |
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からバージョン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> テンプレートのキャッシュを貯めておくためのディレクトリ