在Laravel中尝试和捕获错误处理

2022-08-30 11:23:49

我想在我的应用程序中实现一个好的错误处理,我已经强制此文件来捕获错误。

App\Services\PayuService

try {
  $this->buildXMLHeader; // Should be $this->buildXMLHeader();
} catch (Exception $e) {
        return $e;
}

应用程序\控制器\产品控制器

function secTransaction(){
  if ($e) {
    return view('products.error', compact('e'));
  }
}

这就是我得到的。

enter image description here

我不知道为什么Laravel没有将我重定向到视图。错误是强制的吗?


答案 1

您位于 一个中,因此应该用于指定全局命名空间:namespace\Exception

try {

  $this->buildXMLHeader();

} catch (\Exception $e) {

    return $e->getMessage();
}

在你已经使用的代码中,所以正在搜索/作为:catch (Exception $e)Exception

App\Services\PayUService\Exception

由于内部没有类,因此不会触发它。或者,您可以在类的顶部使用语句,例如,然后可以使用 。ExceptionApp\Services\PayUServiceuseuse Exception;catch (Exception $e)


答案 2

推荐