portrino/typo3-whoops

该软件包已被废弃且不再维护。没有建议替代软件包。

TYPO3项目的Whoops错误/异常处理器

0.1.0 2017-11-13 19:33 UTC

This package is auto-updated.

Last update: 2024-02-20 01:01:02 UTC


README

Build Status Latest Stable Version Total Downloads

使用whoops错误/异常处理器替代TYPO3核心中提供的默认DebugExceptionHandler。这支持你在扩展开发的前端或cli中拥有更友好的异常处理输出。仅应在(本地)开发环境中使用!

入门

使用Composer安装

$ composer require --dev portrino/typo3-whoops

激活

通过AdditionalConfiguration.php

将以下行添加到您的 typo3conf/AdditionalConfiguration.php

$GLOBALS['TYPO3_CONF_VARS']['SYS']['debugExceptionHandler'] = 
    \Portrino\Typo3Whoops\Error\WhoopsExceptionHandler::class;
$GLOBALS['TYPO3_CONF_VARS']['SYS']['productionExceptionHandler'] = 
    \Portrino\Typo3Whoops\Error\WhoopsExceptionHandler::class;

我们强烈建议在周围使用与上下文相关的条件。例如

$applicationContext = \TYPO3\CMS\Core\Utility\GeneralUtility::getApplicationContext()->__toString();
if (strpos($applicationContext, 'Development') !== false) {

    $GLOBALS['TYPO3_CONF_VARS']['SYS']['debugExceptionHandler'] = 
        \Portrino\Typo3Whoops\Error\WhoopsExceptionHandler::class;
    $GLOBALS['TYPO3_CONF_VARS']['SYS']['productionExceptionHandler'] = 
        \Portrino\Typo3Whoops\Error\WhoopsExceptionHandler::class;
        
}
PHP版本兼容性 < 7

由于php5.5和5.6下的ExceptionHandlerInterface与php > 7的不同,我们提供了一个兼容的WhoopsExceptionHandler版本。

$GLOBALS['TYPO3_CONF_VARS']['SYS']['debugExceptionHandler'] = 
    \Portrino\Typo3Whoops\Compatibility\Error\WhoopsExceptionHandler::class;
$GLOBALS['TYPO3_CONF_VARS']['SYS']['productionExceptionHandler'] = 
    \Portrino\Typo3Whoops\Compatibility\Error\WhoopsExceptionHandler::class;

通过TYPO3控制台

typo3cms configuration:set --path SYS/debugExceptionHandler --value "Portrino\\Typo3Whoops\\Error\\WhoopsExceptionHandler"
typo3cms configuration:set --path SYS/productionExceptionHandler --value "Portrino\\Typo3Whoops\\Error\\WhoopsExceptionHandler"

使用方法

现在在您的扩展代码的某处触发一个异常,您应该会看到为酷孩子们准备的PHP错误。

Whoops!

作者

  • Axel Böswetter - 初始工作 - EvilBMP
  • André Wuttig - 错误修复、单元测试、验收测试、Travis CI集成 - aWuttig

还可以查看参与此项目的贡献者列表。