(PHP 8 >= 8.4.0)
ReflectionProperty::isVirtual — Détermine si la propriété est virtuelle
Cette fonction ne contient aucun paramètre.
Exemple #1 ReflectionProperty::isVirtual() example
<?php
class Example
{
// Aucun des hooks ne fait référence à la propriété,
// donc elle est virtuelle.
public string $name { get => "Name here"; }
// Ce hook fait référence à la propriété par son nom,
// donc il n'est pas virtuel.
public int $age {
set {
if ($value <= 0) {
throw new \InvalidArgumentException();
}
$this->age = $value;
}
}
// Les propriétés non-hookées sont toujours non-virtuelles.
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());
?>
L'exemple ci-dessus va afficher :
bool(true) bool(false) bool(false)