ReflectionProperty::setAccessible
(PHP 5 >= 5.3.0, PHP 7, PHP 8)
Set property accessibility
Function-8-5-0
Description
Enables access to a protected or private property via the ReflectionProperty::getValue and ReflectionProperty::setValue methods.
As of PHP 8.1.0, calling this method has no effect; all properties are accessible by default.
Parameters
accessibletrue to allow accessibility, or false.
Return Values
Void
Changelog
| Version | Description |
|---|---|
| 8.5.0 | This method has been deprecated, as it no longer has an effect. |
| 8.1.0 | Calling this method has no effect; all properties are accessible by default. |
Examples
Simple Class definition
<?php
class MyClass
{
private $foo = 'bar';
}
$property = new ReflectionProperty("MyClass", "foo");
$property->setAccessible(true);
$obj = new MyClass();
echo $property->getValue($obj);
echo $obj->foo;
?>The above example will output something similar to:
bar
Fatal error: Uncaught Error: Cannot access private property MyClass::$foo in /in/WJqTv:12See Also
ReflectionProperty::isPrivateReflectionProperty::isProtected