(Yaf >=1.0.0)
Switch on/off exception catching
public Yaf_Dispatcher Yaf_Dispatcher::catchException ([ bool $flag ] )
While the application.dispatcher.throwException is On(you can also calling to Yaf_Dispatcher::throwException(TRUE)() to enable it), Yaf will throw Exception whe error occurrs instead of trigger error.
then if you enable Yaf_Dispatcher::catchException()(also can enabled by set application.dispatcher.catchException), all uncaught Exceptions will be caught by ErrorController::error if you have defined one.
Parameters:
flag
bool
Returns:
Examples:
Yaf_Dispatcher::catchException() example
/* if you defined a ErrorController like following */ <?php class ErrorController extends Yaf_Controller_Abstract { /** * you can also call to Yaf_Request_Abstract::getException to get the * un-caught exception. */ public function errorAction($exception) { /* error occurs */ switch ($exception->getCode()) { case YAF_ERR_NOTFOUND_MODULE: case YAF_ERR_NOTFOUND_CONTROLLER: case YAF_ERR_NOTFOUND_ACTION: case YAF_ERR_NOTFOUND_VIEW: echo 404, ":", $exception->getMessage(); break; default : $message = $exception->getMessage(); echo 0, ":", $exception->getMessage(); break; } } } ?>
The above example will output something similar to:
/* now if some error occur, assuming access a non-exists controller(or you can throw a exception yourself): */ 404:Could not find controller script **/application/controllers/No-exists-controller.php
See also:
Please login to continue.