ReflectionProperty::setValue Set property value &reftitle.description; public voidReflectionProperty::setValue objectobject mixedvalue public voidReflectionProperty::setValue mixedvalue Sets (changes) the property's value. As of PHP 8.3.0, calling this method with a single argument is deprecated, use ReflectionClass::setStaticPropertyValue instead. &reftitle.parameters; object If the property is non-static an object must be provided to change the property on. If the property is static a value of &null; must be to be provided. value The new value. &reftitle.returnvalues; &return.void; &reftitle.changelog; &Version; &Description; 8.3.0 Calling this method with a single argument is deprecated, ReflectionClass::setStaticPropertyValue should be used instead to modify static properties. 8.1.0 Private and protected properties can be accessed by ReflectionProperty::setValue right away. Previously, they needed to be made accessible by calling ReflectionProperty::setAccessible; otherwise a ReflectionException was thrown. &reftitle.examples; <methodname>ReflectionProperty::setValue</methodname> example setStaticPropertyValue('staticProperty', '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); // only required prior to PHP 8.1.0 $reflectionProperty->setValue($foo, 'foobar'); var_dump($reflectionProperty->getValue($foo)); ?> ]]> &example.outputs; &reftitle.seealso; ReflectionProperty::getValue ReflectionProperty::setAccessible ReflectionClass::setStaticPropertyValue