ReflectionProperty::setAccessible

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

ReflectionProperty::setAccessibleSet property accessibility

Warnung

Diese Funktion ist seit PHP 8.5.0 als DEPRECATED (veraltet) markiert. Von der Verwendung dieser Funktion wird dringend abgeraten.

Beschreibung

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

Enables access to a protected or private property via the ReflectionProperty::getValue() and ReflectionProperty::setValue() methods.

Hinweis: As of PHP 8.1.0, calling this method has no effect; all properties are accessible by default.

Parameter-Liste

accessible

true to allow accessibility, or false.

Rückgabewerte

Es wird kein Wert zurückgegeben.

Changelog

Version Beschreibung
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.

Beispiele

Beispiel #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;
?>

Das oben gezeigte Beispiel erzeugt eine ähnliche Ausgabe wie:

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

Siehe auch