Features
- Includes providers for Silex and Zend Framework 2, with community-provided support for other platforms and frameworks
- Now included in the Laravel 4 core!
- Detailed & intuitive page for errors and exceptions
(PrettyPageHandler)
- Code view for all frames in a stack trace with line highlights
(PrettyPageHandler)
- Frame comments & analysis through custom middle-ware/handlers
(PrettyPageHandler)
- Request & app-specific information through custom middle-ware/handlers
(PrettyPageHandler)
- JSON & AJAX support
(JsonResponseHandler)
- XML & SOAP support
(XmlResponsehandler, SoapResponseHandler)
- Clean and tested code-base that's easy to extend and build on to make it work just right for your project
Download
With Composer:
{
"require": {
"filp/whoops": "2.*"
}
}
$ cd my_project
$ composer install
Use
In your Silex project, register the bundled Service Provider:
$app->register(new Whoops\Provider\Silex\WhoopsServiceProvider);
For integration instructions with other frameworks or platforms, check out the README file.
Or if you'd rather take control, integrate it manually and tweak it to fit your needs:
require __DIR__ . "/vendor/autoload.php";
$run = new \Whoops\Run;
$handler = new \Whoops\Handler\PrettyPageHandler;
// Add some custom tables with relevant info about your application,
// that could prove useful in the error page:
$handler->addDataTable('Killer App Details', array(
"Important Data" => $myApp->getImportantData(),
"Thingamajig-id" => $someId
));
// Set the title of the error page:
$handler->setPageTitle("Whoops! There was a problem.");
$run->pushHandler($handler);
// Add a special handler to deal with AJAX requests with an
// equally-informative JSON response. Since this handler is
// first in the stack, it will be executed before the error
// page handler, and will have a chance to decide if anything
// needs to be done.
if (\Whoops\Util\Misc::isAjaxRequest()) {
$run->pushHandler(new \Whoops\Handler\JsonResponseHandler);
}
// Register the handler with PHP, and you're set!
$run->register();
Learn More & Contribute
API Documentation is available here. If you need any help, or want to give us a hand with the project, have a look at the repository!
Thank you for stopping by!