即興でZendFrameworkでルーターをプラグイン化
( diary )最近になってDIコンテナの意味を体で感じ始めてきた今日この頃。僕です。
今日はzendframeworkのRouerという機能をbootstrapに入れてみます。
まずRouer用のリソースを作成
/*
* My_Application_Resource_Router
*/
class My_Application_Resource_Router extends Zend_Application_Resource_ResourceAbstract
{
public function init()
{
// init
$router = null;
// オプション情報取得
$options = $this->getOptions();
// ルータを利用する
if ( $options['use'] == true ) {
// フロントコントローラ取得
$front = Zend_Controller_Front::getInstance();
// ルータ情報を保存する。
$routes = new Zend_Config_Ini( $options['filepath'] , $options['section'] );
$router = $front->getRouter();
$router->addConfig($routes, $options['section']);
}
return $router;
}
}
その後にapplication.iniに設定のファイルを読み込ませます。
resouorce.router.use = true resouorce.router.filepath = "path/to/" resouorce.router.section = "router"
一応、これでindex.phpでやってたことをapplication.iniで行えるようにできました。とさ。
さ。
