shasoft / cdump
Package for outputting PHP variables to the browser console
v1.0
2023-10-30 13:35 UTC
README
Вывод в консоль контрольных значений
Код PHP
enum CEnum1 { case Hearts; case Diamonds; case Clubs; case Spades; } enum CEnum2: string { case Hearts = 'H'; case Diamonds = 'D'; case Clubs = 'C'; case Spades = 'S'; } class TestObject0 { private static int $numerator = 777; public int $iVal = 777; public CEnum1 $enum1; } class TestObject extends TestObject0 { protected static int $numerator2 = 7; public ?TestObject $objPub; private ?TestObject $objPvt; protected bool $logical; protected array $arr = []; protected array $arr2 = []; private $img; public CEnum2 $enum2; // Конструктор public function __construct(?TestObject $obj) { $this->objPub = $obj; $this->objPvt = $obj; $this->logical = true; $this->arr['aaa'] = 1; $this->arr['bbb'] = [2, false, $obj]; $this->arr2[] = 10; $this->arr2[] = 20; $this->arr2[] = 30; $this->arr2[] = $this->arr; $this->img = imagecreate(32, 32); $this->enum1 = CEnum1::Hearts; $this->enum2 = CEnum2::Hearts; } } // Создать объект $obj1 = new TestObject(null); $obj2 = new TestObject($obj1); $obj1->objPub = $obj2; // Вывести в консоль браузера cdump($obj1, 123, false, 1.2, "Test string");
Вывод в консоли браузера
Позволяет раскрывать рекурсивные объекты до бесконечности.
Логирование
Код PHP
// Включить логирование CDumpLog::enable(true); class ClassTest { static public function func0(int $x, int $delta): int { return CDumpLog::group(true, function () use ($x, $delta) { return $x + $delta; }); } } // Логирование вызовов function func1(int $a) { return CDumpLog::group(true, function () use ($a) { return ClassTest::func0($a, 8) * 10; }); } function func2(int $b): int { return CDumpLog::group(true, function () use ($b) { return func1($b + 1) + 2; }); } // Запустить функцию func2(2);
Вывод в консоли браузера