--TEST-- Constructor promotion mixed with other properties, parameters and code --FILE-- prop2 = $prop1 . $param2; } } var_dump(new Test("Foo", "Bar")); echo "\n"; echo new ReflectionClass(Test::class), "\n"; ?> --EXPECTF-- object(Test)#1 (2) { ["prop2"]=> string(6) "FooBar" ["prop1"]=> string(3) "Foo" } Class [ class Test ] { @@ %s - Constants [0] { } - Static properties [0] { } - Static methods [0] { } - Properties [2] { Property [ public string $prop2 ] Property [ public string $prop1 ] } - Methods [1] { Method [ public method __construct ] { @@ %s - Parameters [2] { Parameter #0 [ string $prop1 = '' ] Parameter #1 [ $param2 = '' ] } } } }