mirror of
https://github.com/php/php-src.git
synced 2024-09-22 10:27:25 +00:00
902d64390e
Writing to a proprety that hasn't been declared is deprecated, unless the class uses the #[AllowDynamicProperties] attribute or defines __get()/__set(). RFC: https://wiki.php.net/rfc/deprecate_dynamic_properties
39 lines
526 B
PHP
39 lines
526 B
PHP
--TEST--
|
|
ReflectionObject::__toString() - ensure dynamic property with same name as inherited private property is shown.
|
|
--FILE--
|
|
<?php
|
|
class C {
|
|
private $p = 1;
|
|
}
|
|
|
|
#[AllowDynamicProperties]
|
|
class D extends C{
|
|
}
|
|
|
|
$Obj = new D;
|
|
$Obj->p = 'value';
|
|
echo new ReflectionObject($Obj);
|
|
?>
|
|
--EXPECTF--
|
|
Object of class [ <user> class D extends C ] {
|
|
@@ %s
|
|
|
|
- Constants [0] {
|
|
}
|
|
|
|
- Static properties [0] {
|
|
}
|
|
|
|
- Static methods [0] {
|
|
}
|
|
|
|
- Properties [0] {
|
|
}
|
|
|
|
- Dynamic properties [0] {
|
|
}
|
|
|
|
- Methods [0] {
|
|
}
|
|
}
|