debug_info.phpt 506 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. --TEST--
  2. Testing __debugInfo() magic method
  3. --FILE--
  4. <?php
  5. class Foo {
  6. public $d = 4;
  7. protected $e = 5;
  8. private $f = 6;
  9. public function __debugInfo() {
  10. return ['a'=>1, "\0*\0b"=>2, "\0Foo\0c"=>3];
  11. }
  12. }
  13. class Bar {
  14. public $val = 123;
  15. public function __debugInfo() {
  16. return null;
  17. }
  18. }
  19. $f = new Foo;
  20. var_dump($f);
  21. $b = new Bar;
  22. var_dump($b);
  23. --EXPECTF--
  24. object(Foo)#%d (3) {
  25. ["a"]=>
  26. int(1)
  27. ["b":protected]=>
  28. int(2)
  29. ["c":"Foo":private]=>
  30. int(3)
  31. }
  32. object(Bar)#%d (0) {
  33. }