Max*_*Max 8 php exception try-catch zend-framework2
我已经设置了ZendSkeletonApplication,ZF 2.0.3我无法捕获控制器中的异常.例如,如果我将以下代码放入module/Application/src/Application/Controller/IndexController.php:
public function indexAction() {
echo "BEFORE\n";
try {
throw new \Exception("My exception");
} catch (Exception $e) {
echo "Caught exception $e\n";
exit;
}
Run Code Online (Sandbox Code Playgroud)
并访问我得到的页面:
BEFORE
An error occurred
An error occurred during execution; please try again later.
Additional information:
Exception
File:
module/Application/src/Application/Controller/IndexController.php:25
Message:
My exception
Run Code Online (Sandbox Code Playgroud)
在ViewModel中和显示异常踢,有效地阻止我接住.
如何捕获ZF2控制器中的异常?
Gor*_*don 33
你正在抛出PHP的通用异常
throw new \Exception("My exception");
Run Code Online (Sandbox Code Playgroud)
但是你从当前的命名空间中捕获了Exception
} catch (Exception $e) {
Run Code Online (Sandbox Code Playgroud)
假设您的控制器在Application\Controller,您要么必须声明
use \Exception;
Run Code Online (Sandbox Code Playgroud)
在您的类之上,将全局Exception导入当前命名空间或
} catch (\Exception $e) {
Run Code Online (Sandbox Code Playgroud)
捕获PHP的全局异常.
| 归档时间: |
|
| 查看次数: |
15121 次 |
| 最近记录: |