@ 2018-12-20T13:22:09Z <?php
class Foo {
public $foo;
}
class Bar extends Foo {
public $bar;
}
$barClassReflection = new ReflectionClass(Bar::class);
$properties = $barClassReflection->getProperties();
var_dump($properties);
foreach ($properties as $property) {
var_dump($property->getName());
var_dump($property->class);
var_dump($property->getDeclaringClass()->getName());
var_dump($property->class === $property->getDeclaringClass()->getName());
}
Enable javascript to submit You have javascript disabled. You will not be able to edit any code.
Output for 7.0.33 , 7.1.25 , 7.2.0 - 7.2.33 , 7.3.0 - 7.3.33 , 7.4.0 - 7.4.33 , 8.0.0 - 8.0.30 , 8.1.0 - 8.1.28 , 8.2.0 - 8.2.18 , 8.3.0 - 8.3.4 , 8.3.6 array(2) {
[0]=>
object(ReflectionProperty)#2 (2) {
["name"]=>
string(3) "bar"
["class"]=>
string(3) "Bar"
}
[1]=>
object(ReflectionProperty)#3 (2) {
["name"]=>
string(3) "foo"
["class"]=>
string(3) "Foo"
}
}
string(3) "bar"
string(3) "Bar"
string(3) "Bar"
bool(true)
string(3) "foo"
string(3) "Foo"
string(3) "Foo"
bool(true)
Output for 8.3.5 Warning: PHP Startup: Unable to load dynamic library 'sodium.so' (tried: /usr/lib/php/8.3.5/modules/sodium.so (libsodium.so.23: cannot open shared object file: No such file or directory), /usr/lib/php/8.3.5/modules/sodium.so.so (/usr/lib/php/8.3.5/modules/sodium.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0
array(2) {
[0]=>
object(ReflectionProperty)#2 (2) {
["name"]=>
string(3) "bar"
["class"]=>
string(3) "Bar"
}
[1]=>
object(ReflectionProperty)#3 (2) {
["name"]=>
string(3) "foo"
["class"]=>
string(3) "Foo"
}
}
string(3) "bar"
string(3) "Bar"
string(3) "Bar"
bool(true)
string(3) "foo"
string(3) "Foo"
string(3) "Foo"
bool(true)
Output for 5.6.38 array(2) {
[0]=>
&object(ReflectionProperty)#2 (2) {
["name"]=>
string(3) "bar"
["class"]=>
string(3) "Bar"
}
[1]=>
&object(ReflectionProperty)#3 (2) {
["name"]=>
string(3) "foo"
["class"]=>
string(3) "Foo"
}
}
string(3) "bar"
string(3) "Bar"
string(3) "Bar"
bool(true)
string(3) "foo"
string(3) "Foo"
string(3) "Foo"
bool(true)
preferences:dark mode live preview
168.29 ms | 402 KiB | 154 Q