Bootstrapからリソースを追加する
Bootstrap.phpを利用してリソースタイプを追加します。
これはモジュール別Bootstrap.phpにも使えます。
はじめに
モジュール別Bootstrapとapplication直下にあるBootstrapをまとめてBootstrapと呼びますのであらかじめご了承下さい。
Autoloadを行う
まずはBootstrap内に_initAutoloaderっぽいメソッドを建てます。
Autoloadは何をするかと言うと、自動で呼び出せる(require_onceとかしなくてもOK!)ように調整を行ってくれます。
初期状態だと、「DbTable」、「Form」、「Model」、「Plugin」、「Service」、「ViewHelper」、「ViewFilter」が定義されます。
これだけじゃたりないなーといった場合は、Autoload出来るようにリソースを追加する事が出来ます。
ここに例えば「Action」と追加したい場合は以下のようになります。
$autoloader = new Zend_Application_Module_Autoloader(array("namespace" => "[name_space]",
"basePath" => "[base_path]"
));
$autoloader->addResourceType("action", "action", "Action") ;// ←ここ
// getResource() メソッドで取得出来るようにする為値を返却します。
return $autoloader ;
「←ここ」の部分がミソで、引数は3つ取ります。
第1はタイプ、第2はパス、第3はネームスペースを指定します。
これにより、自動で読み込まれ、いちいちrequire_once()と書かなくてすみます。
(元々そういう構造なので、構造に合わせるため)
どういうときにうまく使える?
データベースをさくっと呼び出せたり、フォームをさくっと呼び出せたり、拡張したフォームを配置しそれを呼び出すことも可能です。
なのであらゆる場面で使えると思います。
後は命名センスが・・・w