不是没有严重违反框架的原则(我会告诉你如何做下面的,如果你仍然有兴趣)。

有一些事情使得难以完成。很容易解决默认错误和异常处理程序

set_error_handler(null);

set_exception_handler(null);

但是这会给你带来两大障碍。

第一个是Laravel注册一个关机处理程序作为其引导的一部分,这个关闭功能将查找最后一个错误,如果是一个致命的错误,手动调用异常处理代码。有no easy way to un-register a shutdown function。

第二个是,主Laravel应用程序处理程序看起来像这样

#File: vendor/laravel/framework/src/Illuminate/Foundation/Application.php

public function handle(SymfonyRequest $request, $type = HttpKernelInterface::MASTER_REQUEST, $catch = true)

{

try

{

$this->refreshRequest($request = Request::createFromBase($request));

$this->boot();

return $this->dispatch($request);

}

catch (\Exception $e)

{

if ($this->runningUnitTests()) throw $e;

return $this['exception']->handleException($e);

}

}

那就是 – 如果应用程序代码抛出一个异常,Laravel在这里捕获它,并手动调用异常的handleException方法(触发标准的Laravel异常处理)。没有办法让PHP处理在您的应用程序中发生的致命异常,Laravel阻止了从未发生过的事情。

我告诉你如何做你想要的部分

所有这一切意味着我们需要用我们自己的Laravel应用程序来代替。在bootstrap / start.php中,有以下行

#File: bootstrap/start.php

$app = new Illuminate\Foundation\Application;

将其替换为以下内容

ini_set('display_errors','1');

class MyApplication extends Illuminate\Foundation\Application

{

function startExceptionHandling()

{

//do nothing

}

public function handle(Symfony\Component\HttpFoundation\Request $request, $type = HttpKernelInterface::MASTER_REQUEST, $catch = true)

{

$this->refreshRequest($request = Request::createFromBase($request));

$this->boot();

return $this->dispatch($request);

}

}

$app = new MyApplication;

我们正在做的第一件事是将PHP的显示错误ini设置为1.这样可以确保错误输出到浏览器。

接下来,我们正在定义一个扩展真实应用程序类的新应用程序类。

最后,我们用我们的类实例化的对象来替换真正的Laravel $ app对象。

在我们的应用程序类本身,我们空白startExceptionHandling。这样可以防止Laravel设置自定义异常,错误和关闭回调。我们还定义了从try / catch中删除应用程序启动/调度的句柄。这是该过程中最脆弱的部分,根据您的Laravel版本可能会有所不同。

最终警告

如果手柄方法在未来的版本Laravel中发生变化,这将会破裂。

如果自定义包依赖于添加自定义异常处理程序,它们可能会中断。

我建议远离这一切,除了临时调试技术之外。

禁止php 报错怎么做,php – 禁用Laravel错误处理程序相关推荐

  1. 微信小程序报错百度地图API 报错 “APP 服务被禁用“

    最近开发微信小程序时,想使用百度地图制作定位功能,结果一直报错"APP服务被禁用",查了好多资料都不行,改成服务端也不行,终于,我在参考了以下这位大佬的博客之后成功用上了百度地图. ...

  2. win10防火墙_Win10端,iCloud报错:鉴定过程中发生错误

    Win10端,iCloud报错:鉴定过程中发生错误 首先,如果iCloud中有重要.未备份.未上传.未同步数据的话及时进行备份,可以直接在win10端进行备份.备份!备份!备份! 其次,看看新闻,是不 ...

  3. 已解决-MacBook重装系统报错:准备安装时发生错误,请尝试重新运行此程序

    我是月球挖掘机,今天重新安装了下macbook air的系统,用联网恢复的方式安装的时候,结果总是报错:准备安装时发生错误,请尝试重新运行此程序.网上找了方法用了还是不行,最后发现自己的时间虽然按照设 ...

  4. 刷机后mi android不动,小米MIflash平台刷机报错问题解决方案小米刷机错误解决方法...

    小米MIflash平台刷机报错问题解决方案小米刷机错误解决方法,如果你不会就看看刷机帮小编是怎么来解决的吧,相信这也是你常遇到的问题. [1.未指定错误(device ls locked)] 小米MI ...

  5. VS2017调试报错:当前页面的脚本发生错误

    vs2017更新到15.7.5版本,然后调试项目就报错:当前页面的脚本发生错误 如下图: 原因: 本人电脑是win7系统,IE浏览器是IE9,所有版本太低了,除非是升级都11,除了升级,还有什么办法呢 ...

  6. VS2019附加到Unity报错 未能完成操作,未指定的错误

    问题:Visual Studio2019 附加到Unity 报错未能完成操作,未指定的错误.编译也没有失败都成功了. 解决方法:在Unity工程中看是不是生成了.vsconfig文件,把这个删除后,再 ...

  7. php数据库报错1046怎么解决,DZ报错MySQL Query Error Errno:1046错误的解决办法

    这篇文章主要为大家详细介绍了DZ报错MySQL Query Error Errno:1046错误的解决办法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,有需要的朋友可以收藏方便以后借鉴. DZ报 ...

  8. jaxb报错_JAXB做错了; 尝试Xembly

    jaxb报错 JAXB是一项具有10年历史的Java技术,它使我们能够将Java对象转换为XML文档(编组)和返回(取消编组). 我认为这项技术基于setter和getter,并且通过将对象转换为被动 ...

  9. windows共享文件夹报错:登录失败: 禁用当前的账户 解决办法

    在虚拟机中使用共享文件夹共享文件时报错 通过查找资料可知 访问共享的时候,会默认以当前账户的身份去验证,因此账户密码不能通过验证,进而报错 解决办法 使用net use命令登录,而后访问共享文件夹 n ...

最新文章

  1. ios面试数据结构与算法
  2. 文本和代码文件助手软件
  3. 赛尔号什么时候支持html5,赛尔号三全能时代即将来临 你准备好了吗
  4. SPOJ HIGH Highways ——Matrix-Tree定理 高斯消元
  5. 项目:如何快速实现电脑间大文件(lichee.tar.gz)互传?
  6. jQuery-$(document).ready和$(window).load有什么区别?
  7. linux 低功耗模式,stm32的低功耗模式:
  8. html 文本框 获取焦点事件,JS的文本输入框获得焦点与失去焦点的事件
  9. UNI-APP实现扫描二维码
  10. Shenyu网关本地打docker镜像包
  11. 微型计算机基础理论——微处理器工作概述
  12. 视频码率与分辨率的参考表
  13. 戴尔3080计算机重装系统步骤,终于发现戴尔笔记本重装系统的方法
  14. i7 8700k 安装linux,Intel i7 8700K核显UHD620安装黑苹果仿冒HD620方法
  15. SkyWalking8.7源码解析(三):静态方法插桩、构造器和实例方法插桩、插件拦截器加载流程、JDK类库插件工作原理
  16. 软件测试架构师知识能力模型
  17. 1.稀缺数组java实现
  18. html5四季特点,美国一年四季天气特点介绍
  19. Axure的动态面板
  20. linux pscp 上传_详解使用pscp命令Linux文件上传与下载

热门文章

  1. Python中 __init__.py的作用
  2. Php中方法作用域,PHP 函数(下):匿名函数和作用域
  3. 什么是分镜头剧本?(分镜头剧本是将文字转换成立体视听形象的中间媒介。主要任务是根据解说词和电视文学脚本来设计相应画面,配置音乐音响,把握片子的节奏和风格等。)
  4. python 相对路径
  5. window如何将CMD以管理员身份添加到右键菜单?
  6. 静态页面cors跨域问题
  7. 元气骑士里的超级计算机,元气骑士:本以为“素颜相机”够火,直到看到它,一秒笑出猪叫声...
  8. three.js两个点给线条加宽度_用感性的方式练习线条,凤尾花21,彩铅手绘教程...
  9. php内核总结_深入理解PHP内核(一)
  10. PKCS5Padding与PKCS7Padding的区别