bug38132.phpt 617 B

1234567891011121314151617181920212223242526272829303132
  1. --TEST--
  2. Reflection Bug #38132 (ReflectionClass::getStaticProperties() retains \0 in key names)
  3. --FILE--
  4. <?php
  5. class foo {
  6. static protected $bar = 'baz';
  7. static public $a = 'a';
  8. }
  9. $class = new ReflectionClass('foo');
  10. $properties = $class->getStaticProperties();
  11. var_dump($properties, array_keys($properties));
  12. var_dump(isset($properties['*bar']));
  13. var_dump(isset($properties["\0*\0bar"]));
  14. var_dump(isset($properties["bar"]));
  15. ?>
  16. --EXPECT--
  17. array(2) {
  18. ["bar"]=>
  19. string(3) "baz"
  20. ["a"]=>
  21. string(1) "a"
  22. }
  23. array(2) {
  24. [0]=>
  25. string(3) "bar"
  26. [1]=>
  27. string(1) "a"
  28. }
  29. bool(false)
  30. bool(false)
  31. bool(true)