staabm / whoops
为酷孩子们设计的PHP错误处理
Requires
- php: ^5.4 || ^7.0
- psr/log: ^1.0.1
Requires (Dev)
- mockery/mockery: ^0.9 || ^1.0
- phpunit/phpunit: ^4.8.35 || ^5.7
- symfony/var-dumper: ^2.6 || ^3.0 || ^4.0
Suggests
- symfony/var-dumper: Pretty print complex values better with var-dumper available
- whoops/soap: Formats errors as SOAP responses
This package is auto-updated.
Last update: 2024-09-05 00:55:37 UTC
README
PHP错误处理,专为酷孩子们设计
whoops 是一个用于PHP的错误处理框架。它自带一个美观的错误界面,可以帮助你调试网络项目,但其核心是一个简单而强大的错误处理系统。
功能
- 灵活的基于堆栈的错误处理
- 独立的库,无需依赖(目前)
- 简单的API,用于处理异常、跟踪帧及其数据
- 包括一个美观的错误页面,适用于你的网络应用项目
- 包括直接在编辑器和IDE中打开引用文件的功能
- 包括不同响应格式的处理器(JSON、XML、SOAP)
- 易于扩展和与现有库集成
- 干净、结构良好、经过测试的代码库
安装
如果你使用Laravel 4或Laravel 5.5+,你已经有了Whoops。社区还提供了如何将Whoops集成到Silex 1、Silex 2、Phalcon、Laravel 3、Laravel 5、CakePHP 2、CakePHP 3、Zend 2、Zend 3、Yii 1、FuelPHP、Slim、Pimple或任何消耗StackPHP中间件或PSR-7中间件的框架的说明。
如果你没有使用上述任何框架,以下是一个非常简单的安装方法
-
使用Composer将Whoops安装到你的项目中
composer require filp/whoops
-
在你的代码中注册美观的处理程序
$whoops = new \Whoops\Run; $whoops->pushHandler(new \Whoops\Handler\PrettyPageHandler); $whoops->register();
有关更多选项,请参阅examples/
中的示例文件以了解事物的工作方式。还可以查看API文档以及下面的可用处理程序列表。
你可能还想覆盖Whoops所做的某些系统调用。为此,扩展Whoops\Util\SystemFacade
,覆盖你想要的函数,并将其作为参数传递给Run
构造函数。
可用处理程序
whoops 目前附带以下内置处理程序,位于Whoops\Handler
命名空间中
PrettyPageHandler
- 当发生错误时显示美观的错误页面PlainTextHandler
- 输出纯文本消息,用于CLI应用程序CallbackHandler
- 将闭包或其他可调用对象封装为处理器。您不需要显式使用此处理器,whoops 将自动将您传递给Whoops\Run::pushHandler
的任何闭包或可调用对象进行封装。JsonResponseHandler
- 捕获异常并将异常信息作为 JSON 字符串返回。可以用于,例如,与 AJAX 请求良好地协作。XmlResponseHandler
- 捕获异常并将异常信息作为 XML 字符串返回。可以用于,例如,与 AJAX 请求良好地协作。
您还可以使用可插拔处理器,例如 SOAP 处理器。
作者
该库主要是由 Filipe Dobreira 开发的,目前由 Denis Sokolov 维护。许多优秀的修复和增强也由 不同贡献者 提交。特别感谢 Graham Campbell 和 Markus Staab 的持续参与。
此软件包括 Prettify,Apache License 2.0 许可。它仅作为性能优化捆绑。