2012-02-09 10 views
0

私のライブラリフォルダ(My_Class)にクラスがあります。コントローラではありません。 TRY-CATCHブロックが入っていて、CATCHブロックからすぐにリダイレクトしたいと思っています。このようにすることは可能ですか?Zendコントローラ外のリダイレクタ

My_Class{ 

     public function MyFunction(){ 

      $this->MyOtherFunction(); 
      //do more stuff 

     } 

     private function MyOtherFunciton(){ 

      try{ 

      //throw exception 

      } catch (Exception $e) { 

       $redirector = new Zend_Controller_Action_Helper_Redirector(); 
       $redirector->gotoSimpleAndExit('action','controller','default'); 
      } 


     } 

リダイレクトしますが、すぐにリダイレクトされますか?あるいは、「//もっと処理する」ことができますか?はい、それはすぐにリダイレクトん

//in controller 
    $myclass = new My_Class(); 
    $myclass->MyFunction(); 

答えて

3

:クラスは、コントローラから呼び出されます。 はあなたに

PSありがとうございました。ファイル内で自分で確認することもできます /Zend/Controller/Action/Helper/Redirector.php

すぐにリダイレクトできないgotoSimple()関数もあります。

0
setExit() can be used to force an exit() following a redirect. By default this is TRUE. 

あなたが$redirector->setExit(false)->setGotoSimple()を試みることができる、私は、この機能を試していないので、リダイレクト後に何を行うには理由があったことがありません。

関連する問題