PHP Debugging tools
The Debug
class contains a bunch of static properties that link back various Tool classes. In order for this to function as expected, you need to either first call Debug::__constructStatic()
, or more ideally, call it from your autoload function. For example.
function autoload( string $class ) {
/**
* EXAMPLE
*/
$path = realpath( __DIR__ . '/examplePath/' );
$require_path = str_replace( '\\', '/', $path. $class );
require_once $require_path . '.php';
/**
* THIS IS THE IMPORTANT BIT.
*
* Check method `__constructStatic` exists and call it if so.
*/
if ( method_exists( $class, '__constructStatic' ) ) {
$class::__constructStatic();
}
}
Usage is as follows:
Debug::$display->data( 'Example Data' );
Debug::$display->table( ['a' => 'b', 'c' => 'd'] );
Debug::$display->page_data();
Usage is as follows:
Debug::$timer->start();
// Some code
Debug::$timer->timestamp( 'label' );
// Some code
Debug::$timer->timestamp( 'another label' );
// Some code
Debug::$timer->end( true );
Usage is as follows:
Debug::$lorium->generate( 2 );
Usage is as follows:
Debug::$cmd->show_output( 'ls' );
Usage is as follows:
Debug::$js->detect_keystroke();
Usage is as follows:
Debug::$log->to_file( 'Some Data' );
Debug::$log->to_file( ['key' => 'Some Data'] );
Debug::$log->to_file( 'SELECT * FROM table_name', 'sql.log' );