Flexyも卒業かな。
(ノ・・)ン。。。。。。(((●コロコロッ
DB不要のツールを一つ作ろうと作業開始。
当初
codeigniterで作ってたのだが、
機能不足は否めず、
他のフレームワークを利用することに。
そこで、Ruby on Railsライクのフレームワークをあれこれ触ってみた。
cakePHP触ってみると、
単にRuby on Railsを真似ただけの印象。
機能不足な上、DBが無いと身動きできない。
ツカエネ。終了。
Symfonyを触ってみると、
これはなかなか良いかもという印象。
しばらく四苦八苦しながらも比較的簡単にAJAXアプリが完成した。
(・∀・)symfonyデイコウ
ここに。
内容を書き出してみた。
さて、その
symfonyのビューシステムなのだが、
デフォルトではPHPそのものを使用している。
実装は楽かもしれないが、
出来上がったテンプレートが全く読めない。
構築している最中は覚えているから良いのだが、
翌日見ると全然わからなくなっている。
(・ω・) テンプレートエンジンツカオ
テンプレートエンジンといえば
HTML_Template_Flexyや
HTML_Template_ITですが、
Smarty?なにそれ?
最近のフレームワークのビューシステムとして利用するには、
ちょっと機能過多状態。
特に
HTML_Template_Flexyはフレームワークのバリデータ機能と内容が被り、
利点を全く活かせない。
( ̄-  ̄ ) ホカニイイノハナイノ?
少し探してみると、
面白いものにあたった。
それは
[More:]
PHPTALとは?
PHP5用のテンプレートエンジン
Zope Page TemplatesのPHP版。
テンプレートの属性上に制御記述をするのでテンプレートのHTMLが崩れない。
サンプルを見ると確かにすべて属性値に格納されている。
<div id="item" tal:repeat="value values">
<div id="item">
<span tal:condition="value/hasDate" tal:replace="value/getDate"/>
<a tal:attributes="href value/getUrl" tal:content="value/getTitle"/>
</div>
<div id="content" tal:content="value/getContent"/>
</div>
(・υ・)``ホォー
ちょっとまとめてみた。(現在進行中)
これはなかなか良いかも。
フレームワーク利用の場合はこれを使うことにしよう。
SymfonyのビューでPHPTALを使うプラグインを
ディノの人が作っていたが、
全く役に立たないので自前で作ることにした。
*注意点
Domを使う仕様上、UTF-8オンリー。
他の文字コードの場合は
prefilterやpostfileterを駆使することになるかもしれない。
Domを使う仕様上、テンプレートは完璧なXMLでなければならない。
入れ子になっていないかキチンとチェックしてから使用する必要がある。