ReflectionProperty::setAccessible
PHP Manual
PHP Manual»ReflectionProperty»ReflectionProperty::setAccessible

ReflectionProperty::setAccessible

(PHP 5 >= 5.3.0, PHP 7, PHP 8)

ReflectionProperty::setAccessibleSet property accessibility

Увага

This function has been DEPRECATED as of PHP 8.5.0. Relying on this function is highly discouraged.

Опис

#[\Deprecated]
public function ReflectionProperty::setAccessible(bool $accessible): void

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.

Параметри

accessible

true to allow accessibility, or false.

Значення, що повертаються

Не повертає значень.

Журнал змін

Версія Опис
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.

Приклади

Приклад #1 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;
?>

Поданий вище приклад виведе щось схоже на:

bar
Fatal error: Uncaught Error: Cannot access private property MyClass::$foo in /in/WJqTv:12

Прогляньте також

To Top