Laravel 5报错抑制
Laravel 5 Error Reporting Suppression
在 Laravel 4 中,很容易抑制 E_NOTICE 消息;
我似乎无法做到这一点,因为如果我添加
error_reporting(E_ALL ^ E_NOTICE)
任何地方它都会被覆盖。
这似乎发生在附近:
(index.php)
$response = $kernel->handle(
$request = Illuminate\Http\Request::capture()
);
我添加了自定义代码来处理 Exceptions/Handler.php 中 exceptions/errors 的更多 "pretty" 视图,但我正在努力关闭通知(我不根本不希望这些中的任何一个都发出通知)
- 是的,问题应该已解决,我知道这一点,但是在这种情况下,我更希望通知不要在直播中轰炸应用程序(我为此有一个自定义日志记录解决方案),并且在开发中我希望显示通知。
您确定 .env
文件中的 APP_DEBUG
在生产环境中设置为 false 吗?这可能会覆盖您的 error_reporting()
呼叫。
在Laravel 5中,我们可以在AppServiceProviders::boot
方法里面设置error_reporting(E_ALL ^ E_NOTICE)
:
public function boot()
{
//set whatever level you want
error_reporting(E_ALL ^ E_NOTICE);
}
在 Laravel 4 中,很容易抑制 E_NOTICE 消息; 我似乎无法做到这一点,因为如果我添加
error_reporting(E_ALL ^ E_NOTICE)
任何地方它都会被覆盖。
这似乎发生在附近: (index.php)
$response = $kernel->handle(
$request = Illuminate\Http\Request::capture()
);
我添加了自定义代码来处理 Exceptions/Handler.php 中 exceptions/errors 的更多 "pretty" 视图,但我正在努力关闭通知(我不根本不希望这些中的任何一个都发出通知)
- 是的,问题应该已解决,我知道这一点,但是在这种情况下,我更希望通知不要在直播中轰炸应用程序(我为此有一个自定义日志记录解决方案),并且在开发中我希望显示通知。
您确定 .env
文件中的 APP_DEBUG
在生产环境中设置为 false 吗?这可能会覆盖您的 error_reporting()
呼叫。
在Laravel 5中,我们可以在AppServiceProviders::boot
方法里面设置error_reporting(E_ALL ^ E_NOTICE)
:
public function boot()
{
//set whatever level you want
error_reporting(E_ALL ^ E_NOTICE);
}