PHP-Fehler für coole Kids
whoops ist ein Fehlerbehandlungsframework für PHP. Standardmäßig bietet es eine hübsche Fehlerschnittstelle, die Ihnen beim Debuggen Ihrer Webprojekte hilft, aber im Kern handelt es sich um ein einfaches, aber leistungsstarkes gestapeltes Fehlerbehandlungssystem.
Wenn Sie Laravel 4, Laravel 5.5+ oder Mezzio verwenden, haben Sie bereits Whoops. Es gibt auch von der Community bereitgestellte Anweisungen zur Integration von Whoops in Silex 1, Silex 2, Phalcon, Laravel 3, Laravel 5, CakePHP 3, CakePHP 4, Zend 2, Zend 3, Yii 1, FuelPHP, Slim, Pimple, Laminas, oder jedes Framework, das StackPHP-Middlewares oder PSR-7-Middlewares nutzt.
Wenn Sie keines dieser Frameworks verwenden, finden Sie hier eine sehr einfache Möglichkeit zur Installation:
Verwenden Sie Composer, um Whoops in Ihrem Projekt zu installieren:
composer require filp/whoops
Registrieren Sie den Pretty-Handler in Ihrem Code:
$ whoops = new Whoops Run ;
$ whoops -> pushHandler ( new Whoops Handler PrettyPageHandler );
$ whoops -> register ();
Weitere Optionen finden Sie in den Beispieldateien unter examples/
um ein Gefühl dafür zu bekommen, wie die Dinge funktionieren. Schauen Sie sich auch die API-Dokumentation und die Liste der verfügbaren Handler unten an.
Möglicherweise möchten Sie auch einige Systemaufrufe überschreiben, die Whoops durchführt. Erweitern Sie dazu WhoopsUtilSystemFacade
, überschreiben Sie die gewünschten Funktionen und übergeben Sie sie als Argument an den Run
Konstruktor.
Sie können den generierten HTML-Code auch sammeln, um ihn selbst zu verarbeiten:
$ whoops = new Whoops Run ;
$ whoops -> allowQuit ( false );
$ whoops -> writeToOutput ( false );
$ whoops -> pushHandler ( new Whoops Handler PrettyPageHandler );
$ html = $ whoops -> handleException ( $ e );
whoops wird derzeit mit den folgenden integrierten Handlern ausgeliefert, die im WhoopsHandler
-Namespace verfügbar sind:
PrettyPageHandler
– Zeigt eine hübsche Fehlerseite an, wenn etwas schief gehtPlainTextHandler
– Gibt eine Nur-Text-Nachricht zur Verwendung in CLI-Anwendungen ausCallbackHandler
– Umschließt einen Abschluss oder ein anderes aufrufbares Element als Handler. Sie müssen diesen Handler nicht explizit verwenden. Whoops umschließt automatisch alle Schließungen oder Callables, die Sie an WhoopsRun::pushHandler
übergebenJsonResponseHandler
– Erfasst Ausnahmen und gibt Informationen dazu als JSON-Zeichenfolge zurück. Kann beispielsweise verwendet werden, um gut mit AJAX-Anfragen zu spielen.XmlResponseHandler
– Erfasst Ausnahmen und gibt Informationen dazu als XML-Zeichenfolge zurück. Kann beispielsweise verwendet werden, um gut mit AJAX-Anfragen zu spielen.Sie können auch steckbare Handler verwenden, z. B. den SOAP-Handler.
Diese Bibliothek wurde hauptsächlich von Filipe Dobreira entwickelt und wird derzeit von Denis Sokolov gepflegt. Viele tolle Korrekturen und Verbesserungen wurden auch von verschiedenen Mitwirkenden eingesandt. Besonderer Dank geht an Graham Campbell und Markus Staab für die kontinuierliche Teilnahme.