- 2006年6月20日 15:18
- PHP
Smarty入門―PHP+テンプレート・エンジンでつくるMVCアプリケーション
PHPでプログラミングをすすめていくと、必ず、HTMLとプログラムがごちゃごちゃになっていき、テンプレートの必要性を感じる事となるハズだ。
PHPプログラムを始めたばかりの頃は、Smartyなどのテンプレートエンジンの存在を知らなかった為、HTMLファイルに目的の値と置換する為の文字列を配置し、PHPのコード上で、その文字列とデータベースより取得した値を置き換える処理を作成していた。
そこで次に、データベースのレコードセットのデータを出力しようとするところでブチ当る。プログラムとHTMLを分離したつもりが、どうしてもPHPのスクリプト内にHTMLが混入してしまうのだ。その頃はしょうがないもんだと思ってた。
まず見つけたのが「htmltemplate」というクラスだった。このクラスは、デザイナーでも簡単に扱えるように、余計な機能は一切省き、変数とレコードセットの出力に特化したクラスで、とにかくシンプル。
そして、「これは・・・!」と思ったのが「Smarty」だった。この「Smarty」はかなりの高機能なテンプレートエンジンで、「楽天」なども約半数のシステムに採用してるほどの実績も持つ。
ただし、かなりの高機能なので、あまりプログラマが駆使しすぎてしまうと、HTMLテンプレート側がSmartyのタグだらけになり、逆に煩雑になってしまうという罠がある。
デザイナーのスキルにあわせて利用すれば、Smartyの素晴らしさが痛感できると思う。
また、設計モデルである「MVCフレームワーク」の要素を含んでおり、「MVC」を意識した設計、開発を行えば効率的なシステムの構築が行える。
- Newer: 動的ページを静的ページに見せかけるには