(PHP 8 >= 8.4.0)
ReflectionProperty::isVirtual — Determina si la propiedad es virtual
Esta función no contiene ningún parámetro.
Ejemplo #1 ReflectionProperty::isVirtual() ejemplo
<?php
class Example
{
    // Ninguno de los hooks hace referencia a la propiedad,
    // por lo que es virtual.
    public string $name { get => "Nombre aquí"; }
    // Este hook hace referencia a la propiedad por su nombre,
    // por lo que no es virtual.
    public int $age {
        set {
            if ($value <= 0) {
               throw new \InvalidArgumentException();
            }
            $this->age = $value;
        }
    }
    // Las propiedades no hookeadas siempre son no virtuales.
    public string $job;
}
$rClass = new \ReflectionClass(Example::class);
var_dump($rClass->getProperty('name')->isVirtual());
var_dump($rClass->getProperty('age')->isVirtual());
var_dump($rClass->getProperty('job')->isVirtual());
?>El ejemplo anterior mostrará:
bool(true) bool(false) bool(false)
