I'm facing a weird problem. It appears I cannot use ZF1.12 Redirector
Helper in the catch() {}
expression. Here is my code:
try {
$scp = new My_Controller_Plugin_Scp();
$scp->auth();
} catch(Exception $e) {
echo $e->getMessage();
// $this->getHelper('Redirector')->setGotoRoute(array(), 'routeName');
$this->_helper->redirector->gotoUrl('/url/');
exit();
}
It appears that using route names in the helper (commented out line) doesn't work in the catch() {}
expression. Code is interpreted as the flash message appears when I go manually to another page (and the echo $e->getMessage()
is displayed on the error page) but it simply doesn't redirect where it should as I'm left with a blank page. The next line after the commented one is, of course, working.
I want to use route names as I may change URL afterwards.
Many thanks.
As you noticed gotoRoute
is something you are looking for:
try {
throw new Exception('test');
} catch(Exception $e) {
//displaying message before redirect is not a good idea.
//Use flash messages
echo $e->getMessage();
$this->_helper->redirector->gotoRouteAndExit(array(), 'home');
}
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.