filp / whoops
为酷 kids 量身定制的 PHP 错误处理
Requires
- php: ^5.5.9 || ^7.0 || ^8.0
- psr/log: ^1.0.1 || ^2.0 || ^3.0
Requires (Dev)
- mockery/mockery: ^0.9 || ^1.0
- phpunit/phpunit: ^4.8.36 || ^5.7.27 || ^6.5.14 || ^7.5.20 || ^8.5.8 || ^9.3.3
- symfony/var-dumper: ^2.6 || ^3.0 || ^4.0 || ^5.0
Suggests
- symfony/var-dumper: Pretty print complex values better with var-dumper available
- whoops/soap: Formats errors as SOAP responses
- 2.15.4
- 2.15.3
- 2.15.2
- 2.15.1
- 2.15.0
- 2.14.6
- 2.14.5
- 2.14.4
- 2.14.3
- 2.14.2
- 2.14.1
- 2.14.0
- 2.13.0
- 2.12.1
- 2.12.0
- 2.11.0
- 2.10.0
- 2.9.2
- 2.9.1
- 2.9.0
- 2.8.0
- dev-master / 2.7.x-dev
- 2.7.3
- 2.7.2
- 2.7.1
- 2.7.0
- 2.6.0
- 2.5.1
- 2.5.0
- 2.4.1
- 2.4.0
- 2.3.2
- 2.3.1
- 2.3.0
- 2.2.1
- 2.2.0
- 2.1.14
- 2.1.13
- 2.1.12
- 2.1.11
- 2.1.10
- 2.1.9
- 2.1.8
- 2.1.7
- 2.1.6
- 2.1.5
- 2.1.4
- 2.1.3
- 2.1.2
- 2.1.1
- 2.1.0
- 2.0.0
- 2.0.0-alpha2
- 2.0.0-alpha1
- 1.x-dev
- 1.1.10
- 1.1.9
- 1.1.8
- 1.1.7
- 1.1.6
- 1.1.5
- 1.1.4
- 1.1.3
- 1.1.2
- 1.1.1
- 1.1.0
- 1.1.0-rc
- 1.0.10
- 1.0.9
- 1.0.8
- 1.0.7
- 1.0.6
- 1.0.5
- 1.0.4
- 1.0.3
- 1.0.1
- 1.0.0
- 0.9.0
- 0.8.4
- dev-feature/frame-args
This package is not auto-updated.
Last update: 2024-09-20 13:39:35 UTC
README
为酷 kids 定制的 PHP 错误
whoops 是一个 PHP 错误处理框架。它提供了一个精美的错误界面,帮助您调试 Web 项目,但本质上是一个简单而强大的堆栈错误处理系统。
功能
- 灵活的堆栈式错误处理
- 独立的库(目前)没有必需的依赖项
- 简单的 API,用于处理异常、跟踪帧及其数据
- 包括针对 Web 应用项目的一个非常酷的错误页面
- 包括直接在您的编辑器和 IDE 中打开引用文件的能力
- 包括对不同响应格式(JSON、XML、SOAP)的处理程序
- 易于扩展和与现有库集成
- 干净的、结构良好的、经过测试的代码库
赞助商
安装
如果您使用 Laravel 4、Laravel 5.5+ 或 Mezzio,您已经拥有了 Whoops。还有社区提供的将 Whoops 集成到 Silex 1、Silex 2、Phalcon、Laravel 3、Laravel 5、CakePHP 3、CakePHP 4、Zend 2、Zend 3、Yii 1、FuelPHP、Slim、Pimple、Laminas 或任何消耗 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
构造函数。
您还可以收集生成的 HTML 以进行处理
$whoops = new \Whoops\Run; $whoops->allowQuit(false); $whoops->writeToOutput(false); $whoops->pushHandler(new \Whoops\Handler\PrettyPageHandler); $html = $whoops->handleException($e);
可用的处理程序
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 的持续参与。