スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

zendの自作ヘルパーの作り方

Zend Frameworkで自作ヘルパーの作り方のメモ。

Fooと言うクラスを作る場合。


  1. ヘルパー名とビューヘルパーのクラス名の最後の部分は同じにする

    class My_View_Helper_Foo


  2. ビューヘルパーのクラスにはヘルパー名と同じ名前のpublicメソッドが定義されている

    class My_View_Helper_Foo
    {
    ...
    public function foo($input) {
    ...
    }
    ...
    }



  3. メソッド内ではechoとかprintを行ってはいけない。printやechoされる内容をエスケープして返す

    ビューヘルパー内で出力するのではなく、ビュースクリプトにて

    <?php echo $this->foo($this->name); ?>

    のように出力するようにします。クラスのメソッド内では、エスケープ済みの結果を返すようにするだけです。

    class My_View_Helper_Foo
    {
    ...
    public function foo($input) {
    ...
    return htmlspacealchars($output)
    }
    ...
    }



  4. クラスはヘルパーと同じ名前のファイルに作成する

    今回の場合は、Foo.phpというファイルにクラスを定義します。



以上の条件をみたしていれば、ビューヘルパーのパスのどこかにファイルを置いておくだけで自動的に読み込み、インスタンス化してくれます。ビューヘルパーのパスを追加するには、Zend_ViewクラスのsetHelperPath()を使います。

IndexController.php 内とかで

$view = new Zend_View();

$view->setHelperPath('/path/to/helpers', 'My_View_Helper');
?>

この時、Foo.php は/path/to/helpers 配下にある。

view 側では

<?php echo $this->foo($this->value); ?>


参考にしたのはココ
スポンサーサイト

トラックバック

コメント

コメントを残す

Secret


プロフィール

U2K

Author:U2K
いろいろプログラムに関しての覚え書きをちょくちょくと書いていきます。

オススメ










オススメ

忍者AdMax

u2k on Twitter

最近の記事


上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。