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

ReflectionProperty::setAccessible

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

ReflectionProperty::setAccessible — Define la accesibilidad de una propiedad

Advertencia

Esta función está OBSOLETA a partir de PHP 8.5.0. Depender de esta función está altamente desaconsejado.

Descripción

#[\Deprecated(
    since: '8.5',
    message: "as it has no effect since PHP 8.1",
)]

public function ReflectionProperty::setAccessible(bool $accessible): void

Activa el acceso a una propiedad protegida o privada mediante los métodos ReflectionProperty::getValue() y ReflectionProperty::setValue().

Nota:

A partir de PHP 8.1.0, la llamada a este método no tiene ningún efecto; todas las propiedades son accesibles por defecto.

Parámetros

accessible

true para permitir el acceso, o false.

Valores devueltos

No se retorna ningún valor.

Historial de cambios

Versión Descripción
8.5.0 Este método ha quedado obsoleto, puesto que ya no tiene efecto.
8.1.0 La llamada a este método no tiene ningún efecto; todas las propiedades son accesibles por defecto.

Ejemplos

Ejemplo #1 Definición de una clase simple

<?php
class MyClass
{
    private $foo = 'bar';
}

$property = new ReflectionProperty("MyClass", "foo");
$property->setAccessible(true);

$obj = new MyClass();
echo $property->getValue($obj);
echo $obj->foo;
?>

Resultado del ejemplo anterior es similar a:

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

Véase también

To Top