Errores de PHP para niños geniales
Whoops es un marco de manejo de errores para PHP. Listo para usar, proporciona una bonita interfaz de errores que lo ayuda a depurar sus proyectos web, pero en el fondo es un sistema de manejo de errores apilados simple pero poderoso.
Si usas Laravel 4, Laravel 5.5+ o Mezzio, ya tienes Whoops. También hay instrucciones proporcionadas por la comunidad sobre cómo integrar Whoops en Silex 1, Silex 2, Phalcon, Laravel 3, Laravel 5, CakePHP 3, CakePHP 4, Zend 2, Zend 3, Yii 1, FuelPHP, Slim, Pimple, Laminas, o cualquier marco que consuma middlewares StackPHP o middlewares PSR-7.
Si no está utilizando ninguno de estos marcos, aquí le mostramos una forma muy sencilla de instalar:
Utilice Composer para instalar Whoops en su proyecto:
composer require filp/whoops
Registre el bonito controlador en su código:
$ whoops = new Whoops Run ;
$ whoops -> pushHandler ( new Whoops Handler PrettyPageHandler );
$ whoops -> register ();
Para obtener más opciones, eche un vistazo a los archivos de ejemplo en examples/
para tener una idea de cómo funcionan las cosas. También eche un vistazo a la documentación de API y la lista de controladores disponibles a continuación.
Es posible que también desees anular algunas llamadas al sistema que hace Whoops. Para hacer eso, extienda WhoopsUtilSystemFacade
, anule las funciones que desee y pásela como argumento al constructor Run
.
También puedes recopilar el HTML generado para procesarlo tú mismo:
$ whoops = new Whoops Run ;
$ whoops -> allowQuit ( false );
$ whoops -> writeToOutput ( false );
$ whoops -> pushHandler ( new Whoops Handler PrettyPageHandler );
$ html = $ whoops -> handleException ( $ e );
whoops actualmente se envía con los siguientes controladores integrados, disponibles en el espacio de nombres WhoopsHandler
:
PrettyPageHandler
: muestra una bonita página de error cuando algo fallaPlainTextHandler
: genera mensajes de texto sin formato para usar en aplicaciones CLICallbackHandler
: envuelve un cierre u otro invocable como controlador. No necesita usar este controlador explícitamente, whoops ajustará automáticamente cualquier cierre o invocable que pase a WhoopsRun::pushHandler
JsonResponseHandler
: captura excepciones y devuelve información sobre ellas como una cadena JSON. Puede usarse, por ejemplo, para jugar bien con las solicitudes AJAX.XmlResponseHandler
: captura excepciones y devuelve información sobre ellas como una cadena XML. Puede usarse, por ejemplo, para jugar bien con las solicitudes AJAX.También puede utilizar controladores conectables, como el controlador SOAP.
Esta biblioteca fue desarrollada principalmente por Filipe Dobreira y actualmente es mantenida por Denis Sokolov. Varios colaboradores también enviaron muchas correcciones y mejoras increíbles. Un agradecimiento especial a Graham Campbell y Markus Staab por su continua participación.