bkrukowski / error-dumper
PHP 中漂亮的错误和异常。
v2.6.4
2016-11-27 15:23 UTC
Requires
- php: ^5.3 || ^7.0
Requires (Dev)
- codacy/coverage: ~1.0.3
- fabpot/php-cs-fixer: @stable
- phpmd/phpmd: @stable
- phpunit/phpunit: 4.* || 5.*
- satooshi/php-coveralls: 1.*
- squizlabs/php_codesniffer: @stable
Suggests
- awesomite/error-dumper: ErrorDumper has moved to a new package name. This package is deprecated.
- symfony/var-dumper: Pretty var_dump without xdebug.
Conflicts
- symfony/var-dumper: <2.0 || >=4.0
README
PHP 的漂亮错误转储器
ErrorDumper 已移动到 awesomite/error-dumper,请使用新的仓库。
要求
- PHP >= 5.3 (也支持 7.0)
- 无依赖
- 为了更漂亮的变量转储,您可以将 symfony/var-dumper 添加到项目中
测试
100% 代码覆盖率 使用 PHPUnit。
安装
如果您使用 composer
将 bkrukowski/error-dumper 添加到依赖项中。
在其他情况下
将以下代码添加到项目中
$pathToLib = 'here put path to error-dumper library'; include $pathToLib . 'src' . DIRECTORY_SEPARATOR . 'autoload.inc.php';
使用方法
[不安全] 以下代码就足够了
\ErrorDumper\Magic::registerErrorDumper();
[安全] 但您应该写点像这样的东西(因为 所有变量,如凭证,当发生异常或错误时都是可见的)
if ($isInTestEnvironment) { \ErrorDumper\Magic::registerErrorDumper(); } else { \ErrorDumper\Magic::registerErrorCallback(function ($e) { /** @var \Exception|\Throwable $e */ // save error somewhere, for example: // $output = \ErrorDumper\Magic::exportExceptionToLightHtml($exception); // \Foo\MyErrorStorage::addHtmlError($output); exit(1); }); }
编辑器
行数和文件名是可点击的,但您必须设置适当的编辑器。默认编辑器是 PhpStorm。如果您使用其他编辑器,请将编辑器对象作为参数传递给 registerErrorDumper
方法。
\ErrorDumper\Magic::registerErrorDumper(new \ErrorDumper\Editors\MacVim());
支持的编辑器
- MacVim
- PhpStorm
- TextMate
快照
使用以下代码,您可以将异常保存到某处并在以后显示它
$output = \ErrorDumper\Magic::exportExceptionToLightHtml($exception);
向快照添加自定义信息
从版本 2.3.0 开始,有一个特殊的常量 ErrorDumper\Dumpers\Html::TAG_UNDER_TITLE
。您可以使用 str_replace
函数将任何内容放在标题下。
仅处理异常
您可以选择要处理的错误类型。方法
ErrorDumper\Magic::registerErrorDumper
ErrorDumper\Magic::registerErrorCallback
ErrorDumper\Handlers\RegisterErrorHandler::register
有可选参数 $errorTypes
,默认值等于 ErrorDumper\Handlers\RegisterErrorHandler::TYPE_ALL
。此值等于常量 ErrorDumper\Handlers\RegisterErrorHandler::TYPE_*
的二进制乘积。如果您只想处理错误,请在这里输入 ErrorDumper\Handlers\RegisterErrorHandler::TYPE_ERRORS | ErrorDumper\Handlers\RegisterErrorHandler::TYPE_SHUTDOWN_ERRORS
。