bdk/debug

Browser/javascript like console class for PHP

v3.2 2024-01-03 15:37 UTC

README

Browser/javascript like console class for PHP

Website/Usage/Examples: http://www.bradkent.com/php/debug

  • PHP port of the javascript web console api
  • multiple simultaneous output options
    • ChromeLogger
    • FirePHP (no FirePHP dependency!)
    • HTML
    • Plain text / file
    • <script>
    • WebSocket (WAMP)
    • "plugin"
  • "Collectors" / wrappers for
    • Guzzle
    • Doctrine
    • Mysqli
    • PDO
    • PhpCurlClass
    • SimpleCache
    • SoapClient
    • SwiftMailer
    • more
  • PSR-3 (Logger) Implementation
  • PSR-15 (Middleware) Implementation
  • custom error handler
    • errors (even fatal) are captured / logged / displayed
    • optionally send error notices via email (throttled as to not to send out a flood of emails)
  • password protected
  • send debug log via email

Screenshot of PHPDebugConsole's Output

Installation

This library supports PHP 5.4 - 8.3 and has no userland dependencies.

It is installable and autoloadable via Composer as bdk/debug.

{
    "require": {
        "bdk/debug": "3.0",
    }
}

installation without Composer

// Step 1: include and register our autoloader
require 'path-to/src/Debug/Autoloader.php';
$autoloader = new \bdk\Debug\Autoloader();
$autoloader->register();
// Step 2:  you can now instantiate and user Debug
$debug = new \bdk\Debug();

See http://www.bradkent.com/php/debug for more information

Usage

See http://www.bradkent.com/php/debug

PSR-3 Usage

PHPDebugConsole includes a PSR-3 implementation (which can be used as a monolog PSR handler). If you're using a application or library that uses these standards, drop PHPDebugConsole right in.

(this library includes neither psr/log or monolog/monolog. Include separately if needed.)

PSR-3:

// instantiate PHPDebugLogger / get instance
$debug = \bdk\Debug::getInstance();
$psr3logger = $debug->logger;
$psr3logger->emergency('fallen and can\'t get up');

monolog:

$monolog = new \Monolog\Logger('myApplication');
$monolog->pushHandler(new \bdk\Debug\Collector\MonologHandler($debug));
$monolog->critical('all your base are belong to them');

Methods

  • log
  • info
  • warn
  • error
  • assert
  • clear
  • count
  • countReset
  • group
  • groupCollapsed
  • groupEnd
  • profile
  • profileEnd
  • table
  • time
  • timeEnd
  • timeLog
  • trace
  • more

Tests / Quality

No Dependencies Supported PHP versions Build Status Codacy Score Maintainability Coverage

Changelog

http://www.bradkent.com/php/debug#changelog