Documentación offline PHP master

ReflectionProperty::__construct

master Ver versión oficial en línea Licencia CC-BY-3.0Descargado el 2026-08-02

En esta página

ReflectionProperty::__construct

Construye un nuevo objeto ReflectionProperty

Descripción#

public ReflectionProperty::__construct(object $class, string $property)
```php

## Parámetros

`class`  
Puede ser un string que contenga el nombre de la clase a introspeccionar, o un objeto.

`property`  
El nombre de la propiedad a reflejar.

## Errores/Excepciones

Intentar recuperar o definir el valor de una propiedad privada o protegida de una clase emitirá una excepción.

## Ejemplos

Ejemplo con ReflectionProperty::\_\_construct
La%s%s%s%s propiedad '%s' (que fue %s)\n" . " con los modificadores %s\n", $prop->isPublic() ? ' pública' : '', $prop->isPrivate() ? ' privada' : '', $prop->isProtected() ? ' protegida' : '', $prop->isStatic() ? ' estática' : '', $prop->getName(), $prop->isDefault() ? 'declarada en tiempo de compilación' : 'creada en tiempo de ejecución', var_export(Reflection::getModifierNames($prop->getModifiers()), true) ); // Creación de una instancia de Str $obj= new Str(); // Obtiene el valor actual printf("---> Value is: "); var_dump($prop->getValue($obj)); // Modifica el valor $prop->setValue($obj, 10); printf("---> Setting value to 10, new value is: "); var_dump($prop->getValue($obj)); // Muestra el objeto var_dump($obj); ?>
Resultado del ejemplo anterior es similar a:

    ===> La pública propiedad 'length' (que fue declarada en tiempo de compilación)
         con los modificadores array (
      0 => 'public',
    )
    ---> Value is: int(5)
    ---> Setting value to 10, new value is: int(10)
    object(Str)#2 (1) {
      ["length"]=>
      int(10)
    }

Obtención de un valor desde una propiedad privada o protegida utilizando la clase `ReflectionProperty`
setAccessible(true); var_dump($prop->getValue($obj)); // int(2) $prop = new ReflectionProperty('Foo', 'z'); $prop->setAccessible(true); var_dump($prop->getValue($obj)); // int(2) ?>

```php

Resultado del ejemplo anterior es similar a:

int(2)
int(3)

Véase también#

ReflectionProperty::getName, Los constructores