タグ別アーカイブ: Smarty

Smarty vs phtml

内モンゴル事務所にて、MVCの効果的な分離方法を検討しています。

今までは、Zend_Viewを継承したViewにSmartyを連携させる形で実装を行っていました。

しかし、Zendが提供するView関連のライブラリは、基本的にphtmlによる実装となっています。

Zendとしては、phtmlを中心としていきたいのでしょう。

ただ、コードとビューの分離を考えると、phtmlよりはSmartyコードの方が適していると思われます。

Zend_LayoutにSmartyを連携させるか、phtmlとしてZend_Dojoも使えるようにするか

検討が続きます・・・

Smartyのテンプレート内でクラスインスタンスを生成する

Smartyのテンプレート内でどうしてもクラス生成を行いたい場合に、こんな風に書いたらエラーが出ます。
※デリミタは{% … %}とする

{% new ClassA()->methodA() %}

newが正常に認識できないようです。
対処方法としては、phpタグを使ってコードを実行します。

{% php %}
$a = new ClassA()->methodA();
$this->assign(‘valueA’, $a);
{% /php %}
{% $valueA %}