【PHP】 Smarty 隔離スレ 【テンプレート】at PHP【PHP】 Smarty 隔離スレ 【テンプレート】 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト300:196 08/10/15 19:01:26 せっかくなのでSmartyの質問をさせてくれ。 (是非はおいといて)>>278のような事をSmartyで実現したい。 MVCで言うと、new Smarty();が書かれるファイルは、 モデルでもコントローラでもなく、ビューに属する事になる。 sfSmartyViewとかZend_View_Smartyみたいな位置づけになるわけだな。なので、 コントローラ(ラッパーにテンプレート変数を渡す) ↓ ビュー用のラッパー。内部的に$snarty->assign();が書かれる ↓ ★テンプレート変数の整形処理(Smartyの便利な構文で書ければ良い) $name = {$name|escape|なんたら|かんたら} ↓ テンプレートファイル(.tpl) {$name} みたいな風にしたいのだが、それは仕様上無理なんだろうか。 {assign}とか{eval}でいける? コストはこの際考えないことにして・・・。 301:nobodyさん 08/10/15 19:38:33 >>299 >tpl.phpが難しいから学習コストが高いということかな? 少なくともSmartyと比較したら数倍難しいし、 素人のロジックがシステムに混入する恐れがある。 define("DEBUG", 1); とか $_POST["xxx"] = "debug data!"; とか書かれてたら寒気しない? >Smartyで出来る事は理論上すべてPHPで出来る これは逆じゃないかな。 「symfonyで出来る事は全てPHPで出来る」と言ってるのと同じで、 Smartyは所詮PHPライブラリに過ぎないんだから。 > PHPが理解出来ないレベルのへぼデザイナーはbody.phpだけ触らせるしかない >「SmartyはわかるけどPHPは触れません」というデザイナーって、結構多いのかな? 仮にPHPが触れるデザイナがいたとしても、 上に書いたようにセキュリティの観点からは、システムに影響を与える権限を与えないのが普通だと思う。 少なくとも外注のデザイナには絶対に触らせたくないよね。 >tpl.phpは、デザイナーが作るのが理想だが、プログラマーがやっても構わない。 tpl.phpはビューである以上、デザイナが触るべきだと思う。 ロジック的にMVCを分けても、管理体制(担当区分)がわかれていないとエラーが出た時に面倒だから。 そういう意味ではSmartyはその機能性より、 コードの統一性や管理体制に与える恩恵の方が大きいのかもね。 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch