@blog.justoneplanet.info

日々勉強

Zend_Viewをもっと触ってみる

■パーシャルビュー

scripts配下から指定する。

<?php echo $this->partial('index/edit.phtml'); ?>

他のビュースクリプトを呼び出すための仕組みだ。

<?php
echo $this->partial(
    'index/edit.phtml',
    array(
        'val' => $this->val
    )
);
?>

上述のように、変数は明示的して引数で渡す必要がある。

■プレイスホルダ

コントローラ

$this->view->HeadScript()->appendFile('/admin/js/init.js');

ビュー

<?php echo $this->HeadScript(); ?>

出力

<script type="text/javascript" src="/admin/js/init.js"></script>

■Zend_Translate

その名の通り多言語サイトをつくるときに使うやつ。

Zend_Registry::set(
    'Zend_Translate',
    new Zend_Translate(
        'array',
        array(
            'submit' => '送信'
        ),
        'ja'
    )
);

ビュー

<?php echo $this->formSubmit('', $this->translate('submit')); ?>

出力

<input type="submit" name="" id="" value="送信">

なんかファイルフォーマットのアダプタがいっぱいある。

■自作ビューヘルパー

クラスを定義

application/modules/admin/views/helpers/Br.php

<?php
class Zend_View_Helper_Br
{
    //呼び出し元のZend_Viewが自動的に$viewに代入される
    public $view;
    public function setView(Zend_View_Interface $view)
    {
        $this->view = $view;
    }
    public function br()
    {
        return "<br />\n";
    }
}
?>

コントローラ

$this->view->addHelperPath('application/modules/admin/views/helpers', 'Zend_View_Helper_');

ビュー

<?php echo $this->br(); ?>

どっちかというと命名規則が重要である。

自作クラス名
Zend_View_Helper_ + Br
自作クラス名(メソッド)
br
ビュー
echo $this->br();

コメントはまだありません»

No comments yet.

RSS feed for comments on this post.TrackBack URL

Leave a comment