2日目helperを作ってみる

まぁテンプレートとかあったらいいよねーというわけでテンプレートエンジンについていろいろ考えてみた。

結論としては、short_opentagな(<?=みたいなやつね)素のPHPでかいたら楽だし、配布も楽かなーと妄想するわけです。

でも、smartyみたいにmodifierでチェーンとかしたい。

つまり

<?=h($str)?>
結果: &#039;&lt;&gt;&quot;
<?=h($str)->u()?>エスケープしたのちURLエンコード(実際やるときは順番逆ですね)
結果: %26%23039%3B%26lt%3B%26gt%3B%26quot%3B

こんな感じにかけたらいいんじゃないかと。

というわけで作った。
http://github.com/cocoiti/cocochat/commit/b32b64c55f6605d7ee9da93fdb50b6e0596eef2c
http://github.com/cocoiti/cocochat/commit/6a64c608367e65607d6e7d875b127ca14a459c09

さーて遅延評価とかしちゃうぞーとか考えてリファクタを開始しようとおもったんですが、よく考えてみたら、Ethna(smarty)とか、symfony(素のPHP)でmodifierのチェーンどころかmodiferすらほとんどつかったことなかったので、やっぱイラネということにした。

結論: 俺だったら絶対に使わないのであとで消す

わりきりって重要よね。