Zendアプリケーションでビューヘルパーを作成すると、すべてのビューでそのヘルパーを使用できるようになりますか、または特定のビューでそのビューヘルパーが使用可能であることを何らかの形で伝える必要がありますか? ビューフォルダ "something"に複数のファイルがある場合はどうなりますか?それらのファイルのどれでもそれを呼び出すことができますか?ビューヘルパーを呼び出すとZend-Framework Viewヘルパー - 特定のビューに関連していますか?
どうもありがとう、 MEM
Zendアプリケーションでビューヘルパーを作成すると、すべてのビューでそのヘルパーを使用できるようになりますか、または特定のビューでそのビューヘルパーが使用可能であることを何らかの形で伝える必要がありますか? ビューフォルダ "something"に複数のファイルがある場合はどうなりますか?それらのファイルのどれでもそれを呼び出すことができますか?ビューヘルパーを呼び出すとZend-Framework Viewヘルパー - 特定のビューに関連していますか?
どうもありがとう、 MEM
は、フレームワークは$view->addHelperPath()
経由で定義されたパス内になります。典型的に、このような呼び出しは疑似名前空間だけでなく、パスが含まれます:
$view->addHelperPath('My/View/Helper', 'My_View_Helper_');
その後、あなたはレイアウトやビュースクリプトでビューヘルパーを呼び出すとき:
<?php echo $this->someHelper() ?>
フレームワークはLIFO検索を行い、プレフィックス(上記の場合:'My_View_Helper_'
)をクラス名'SomeHelper'
に追加してから、addHelperPath()
マッピングで定義されたファイルをロードしようとします。デフォルトの設定では
、フレームワークが呼び出すことでZendのビューヘルパーをプリロード:
$view->addHelperPath('Zend/View/Helper', 'Zend_View_Helper_');
あなたが箱から出してすぐすべてのZendが提供するビューヘルパーを使用することができる理由です。
この処理はすべて、どのビュースクリプトが呼び出しを行っているかに関係なく、どのビュースクリプトでも機能します。 [実際には他のモジュールで定義されたビューヘルパーを呼び出す際にいくつかの問題がありますが、それは別の問題です。]
ビューヘルパーはすべてのビューで使用できます。 – opHASnoNAME
ありがとうございました:)それで答えたら、私はあなたにポイントを与えることができます。 :) – MEM