Zend フロント コントローラー プラグインがあります。リクエスト オブジェクトとサービス レイヤーに依存しますが、アプリケーション間で再利用することはできません。したがって、アプリケーションのコントローラ ディレクトリ内の Plugins ディレクトリに属していると思います。これは正しいと思いますか?
次に、Zend にこのディレクトリのプラグインを自動ロードさせるにはどうすればよいですか?
ありがとう!
Zend フロント コントローラー プラグインがあります。リクエスト オブジェクトとサービス レイヤーに依存しますが、アプリケーション間で再利用することはできません。したがって、アプリケーションのコントローラ ディレクトリ内の Plugins ディレクトリに属していると思います。これは正しいと思いますか?
次に、Zend にこのディレクトリのプラグインを自動ロードさせるにはどうすればよいですか?
ありがとう!
プラグインはpluginsフォルダーに入れるべきだということに同意します。私は通常、アプリのカスタム名前空間を使用して、ブートストラップ中にリソースオートローダーのインスタンスをセットアップします。たとえば、アプリの名前空間が「Bob」だったとします。
protected function _initAutoloader()
{
$autoloader = Zend_Loader_Autoloader::getInstance();
$resourceAutoloader = new Zend_Loader_Autoloader_Resource(array(
'basePath' => APPLICATION_PATH,
'namespace' => 'Bob',
'resourceTypes' => array(
'model' => array(
'path' => 'models/',
'namespace' => 'Model'
),
'form' => array(
'path' => 'forms/',
'namespace' => 'Form'
),
'plugin' => array(
'path' => 'plugins/',
'namespace' => 'Plugin'
),
'service' => array(
'path' => 'services/',
'namespace' => 'Service'
)
)
));
$autoloader->pushAutoloader($resourceAutoloader);
return $autoloader;
}
必要に応じて、リソースタイプを追加または削除します。その後、プラグインをapplication / plugins / Whatever.phpに配置すると、通常どおり自動ロードされます。