<?php
class Test {
public $foo = 1;
public $bar = 2;
public function test()
{
$class = new ReflectionClass(get_class($this));
$names = array();
foreach($class->getProperties() as $property)
{
$names[] = $property->getName();
// This code works:
// $names[] = $property->name;
}
return $names;
}
}
$test = new Test();
var_dump($test->test());
Deprecated: Methods with the same name as their class will not be constructors in a future version of PHP; Test has a deprecated constructor in /in/a0MFV on line 2
array(2) {
[0]=>
string(3) "foo"
[1]=>
string(3) "bar"
}
Output for 4.4.2 - 4.4.9
Parse error: syntax error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /in/a0MFV on line 3
Process exited with code 255.
Parse error: parse error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /in/a0MFV on line 3
Process exited with code 255.
Output for 4.3.2 - 4.3.4
Parse error: parse error, expecting `T_OLD_FUNCTION' or `T_FUNCTION' or `T_VAR' or `'}'' in /in/a0MFV on line 3
Process exited with code 255.