readonly_properties.phpt 578 B

12345678910111213141516171819202122232425262728
  1. --TEST--
  2. Readonly property reflection
  3. --FILE--
  4. <?php
  5. class Test {
  6. public int $rw;
  7. public readonly int $ro;
  8. }
  9. $rp = new ReflectionProperty(Test::class, 'rw');
  10. var_dump($rp->isReadOnly());
  11. var_dump(($rp->getModifiers() & ReflectionProperty::IS_READONLY) != 0);
  12. $rp = new ReflectionProperty(Test::class, 'ro');
  13. var_dump($rp->isReadOnly());
  14. var_dump(($rp->getModifiers() & ReflectionProperty::IS_READONLY) != 0);
  15. $rp = new ReflectionProperty(Test::class, 'ro');
  16. echo $rp;
  17. ?>
  18. --EXPECT--
  19. bool(false)
  20. bool(false)
  21. bool(true)
  22. bool(true)
  23. Property [ public readonly int $ro ]