"; print ""; print '
Class Test Master
'; function test() { return DebugSupport::getCallerMethod(1); } print "S::GETCALLERMETHOD: ".DebugSupport::getCallerMethod(0)."
"; print "S::GETCALLERMETHOD: ".test()."
"; print "S::PRINTAR: ".DebugSupport::printAr(['Foo', 'Bar'])."
"; print "V-S::PRINTAR: ".$debug_support_class::printAr(['Foo', 'Bar'])."
"; // debug print "C->DEBUG: ".$debug->debug('CLASS-TEST-DEBUG', 'Class Test Debug')."
"; print "C->DEBUG(html): ".$debug->debug('CLASS-TEST-DEBUG', 'HTML TAG
BOLD')."
"; print "C->DEBUG(html,strip): ".$debug->debug('CLASS-TEST-DEBUG', 'HTML TAG
BOLD', true)."
"; print "C->PRINTERRORMSG:
".$debug->printErrorMsg()."
"; echo "CLASS DEBUG CALL
"; class TestL { public $log; public function __construct() { $this->log = new CoreLibs\Debug\Logging(); } public function test(string $ts = null) { print "* GETCALLERCLASS(INSIDE CLASS): ".\CoreLibs\Debug\Support::getCallerClass()."
"; $this->log->debug('TESTL', 'Logging in class testL'.($ts !== null ? ': '.$ts : '')); $this->log->debug('TESTL', 'Some other message'); return true; } } class TestR extends TestL { public $foo; public function __construct() { parent::__construct(); } public function subTest() { print "** GETCALLERCLASS(INSIDE EXTND CLASS): ".\CoreLibs\Debug\Support::getCallerClass()."
"; $this->log->debug('TESTR', 'Logging in class testR (extends testL)'); $this->test('TESTR INSIDE'); $this->log->debug('TESTR', 'Array: '.$this->log->prAr(['a', 'b']).', Other: '.$this->log->prAr(['a', 'b'])); return true; } } $tl = new TestL(); print "CLASS: LOG ECHO: ".(string)$tl->log->getLogLevelAll('echo')."
"; print "CLASS: DEBUG: ".$tl->test()."
"; print "CLASS: PRINTERRORMSG:
".$tl->log->printErrorMsg()."
"; $tr = new TestR(); print "CLASS: LOG ECHO: ".(string)$tr->log->getLogLevelAll('echo')."
"; print "CLASS EXTEND: DEBUG/tl: ".$tr->test('TESTR OUTSIDE')."
"; print "CLASS EXTEND: DEBUG/tr: ".$tr->subTest()."
"; print "CLASS EXTEND: PRINTERRORMSG:
".$tr->log->printErrorMsg()."
"; // test attaching a logger from outside class AttachOutside { public $log; public function __construct(object $logger_class) { $this->log = $logger_class; } public function test() { $this->log->debug('ATTACHOUTSIDE', 'A test'); return get_class($this); } } $ao = new AttachOutside($basic->log); print "AO-CLASS: DEBUG: ".$ao->test()."
"; print "GETCALLERCLASS(NON CLASS): ".\CoreLibs\Debug\Support::getCallerClass()."
"; // fdebug print "S::FSETFILENAME: ".FileWriter::fsetFilename('class_test_debug_file.log')."
"; print "S::FDEBUG: ".FileWriter::fdebug('CLASS TEST DEBUG FILE: '.date('Y-m-d H:i:s'))."
"; // error message // future DEPRECATED // $basic->debug('BASIC CLASS', 'Debug test'); $basic->log->debug('BASIC CLASS', 'Debug test'); print "BASIC PRINTERRORMSG:
".$basic->log->printErrorMsg(); print ""; // __END__