S eda1a14b50ee24bcab19b62f40858e76 Zend_Controller

とりあえず動かす

setControllerDirectory('app/controllers');
$ctrl->dispatch();

// app/controllers/IndexController.php
class IndexController extends Zend_Controller_Action{
    public function indexAction(){
        $this->view->assign('time', time());
    }
}
// app/controllers/ErrorController.php
class ErrorController extends Zend_Controller_Action{
    public function errorAction(){
    }
}
// app/views/scripts/index/index.phtmlと
// app/views/scripts/error/error.phtmlも用意しておく

//
?>

エラーを捕捉したい場合

dispatch();
$exceptions = $ctrl->getResponse()->getException();
if ($exceptions){
    var_dump(array_shift($exceptions));
}
?>

テンプレートにassignして、出力する

view->assign('time', time();
}
?>
// app/views/scripts/index/hoge.phtml
/*

  
    now: view->time ?>
  

 */


Zend_Controller_Action

初期化はinit()に書く
$this->viewにデフォルトのViewが入ってる。


Zend_Controller_Router

// Requestの書き換え
$router = new Zend_Controller_Router_Rewrite();
$router->addConfig($config);
$this->request = $router->route($this->request);

// URLの構築
$url = $baseUrl . $this->router->assemble($params, $name, true);


Regexでassembleする場合は逆向きの設定をしなければならない。コンストラクタの第4引数か、reverseオプションで与える

もしかして

    他の人の「Zend_Controller」

    S eda1a14b50ee24bcab19b62f40858e76

    無所属ソフトウェアエンジニア

    (1722words)

    最新

      最新エントリ