ReflectionProperty::setValue
Définit la valeur de la propriété
&reftitle.description;
public voidReflectionProperty::setValue
objectnullobject
mixedvalue
public voidReflectionProperty::setValue
mixedvalue
Définit (modifie) la valeur de la propriété.
Pour définir les valeurs des propriétés statiques, utiliser ReflectionProperty::setValue(null, $value).
&reftitle.parameters;
object
Pour les propriétés statiques, passez &null;.
Pour les propriétés non statiques, passez l'objet.
value
La nouvelle valeur.
&reftitle.returnvalues;
&return.void;
&reftitle.changelog;
&Version;
&Description;
8.3.0
L'appel de cette méthode avec un seul argument est obsolète,
utiliser plutôt ReflectionProperty::setValue(null, $value)
pour les propriétés statiques.
8.1.0
Les propriétés privées et protégées sont immédiatement
accessibles par ReflectionProperty::setValue.
Auparavant, elles devaient être rendues accessibles en appelant
ReflectionProperty::setAccessible,
sinon une ReflectionException était déclenchée.
&reftitle.examples;
Exemple avec ReflectionProperty::setValue
getProperty('staticProperty');
$reflectionProperty->setValue(null, 'foo');
var_dump(Foo::$staticProperty);
$foo = new Foo;
$reflectionClass->getProperty('property')->setValue($foo, 'bar');
var_dump($foo->property);
$reflectionProperty = $reflectionClass->getProperty('privateProperty');
$reflectionProperty->setAccessible(true); // Seulement nécessaire avant PHP 8.1.0.
$reflectionProperty->setValue($foo, 'foobar');
var_dump($reflectionProperty->getValue($foo));
?>
]]>
&example.outputs;
&reftitle.seealso;
ReflectionProperty::getValue
ReflectionProperty::setAccessible
ReflectionClass::setStaticPropertyValue