Open
Description
Description
The following code:
<?php
final class A
{
private mixed $private;
private private(set) mixed $privatePrivateSet;
protected private(set) mixed $protectedPrivateSet;
public private(set) mixed $publicPrivateSet;
}
var_dump(
new ReflectionProperty(A::class, 'private')->isPrivateSet(),
new ReflectionProperty(A::class, 'privatePrivateSet')->isPrivateSet(),
new ReflectionProperty(A::class, 'protectedPrivateSet')->isPrivateSet(),
new ReflectionProperty(A::class, 'publicPrivateSet')->isPrivateSet(),
);
Resulted in this output:
bool(false)
bool(false)
bool(true)
bool(true)
But I expected this output instead:
bool(true)
bool(true)
bool(true)
bool(true)
PHP Version
PHP 8.4.0-dev (cli) (built: Sep 24 2024 14:38:59)
Operating System
MacOS