
[英]Extend the Laravel\Lumen\Exceptions\Handler.php inside package
[英]Laravel, how to get controller instance or classname in handle() inside App\Exceptions\Handler.php
我环顾四周,似乎找不到关于此的答案或讨论。
是否可以在App \\ Exceptions \\ Handler.php的“ handle()”方法中获取原始控制器的实例?
我想知道如何执行此操作,以便知道发生异常的控制器。
谢谢!
您有一个$e->getTrace()
返回异常对象的堆栈跟踪。 但是,除非您进行虚拟搜索,否则您仍然不知道控制器位于哪个索引中:
foreach ($e.getTrace() as $traceElement) {
if (preg_match('/path\/to\/your\/Http\/Controllers\/(.*?)Controller/', $traceElement['class'])) {
$controllerClass = traceElement['class'];
$contrllerObject = new $controllerClass();
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.