ReflectionProperty::setAccessible

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

ReflectionProperty::setAccessibleSet property accessibility

说明

public 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.

返回值

没有返回值。

示例

示例 #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

参见