(PHP 5, PHP 7, PHP 8)
ReflectionClass::getDefaultProperties — Obtiene las propiedades por defecto
Obtiene las propiedades por defecto de una clase (incluyendo las propiedades heredadas).
Nota:
Este método funciona únicamente para las propiedades estáticas cuando se utiliza en clases internas. El valor por defecto de una propiedad de clase estática no puede ser monitoreado al utilizar este método en clases definidas por el usuario.
Esta función no tiene parámetros.
Un tableau de propiedades por defecto donde la clave es el nombre de la
propiedad y el valor es el valor por defecto de la propiedad o null
si la propiedad no tiene valor por defecto.
La función no distingue entre propiedades estáticas y no estáticas y no considera la visibilidad.
Ejemplo #1 Ejemplo con ReflectionClass::getDefaultProperties()
<?php
class Bar {
protected $inheritedProperty = 'inheritedDefault';
}
class Foo extends Bar {
public $property = 'propertyDefault';
private $privateProperty = 'privatePropertyDefault';
public static $staticProperty = 'staticProperty';
public $defaultlessProperty;
}
$reflectionClass = new ReflectionClass('Foo');
var_dump($reflectionClass->getDefaultProperties());
?>
El resultado del ejemplo sería:
array(5) { ["staticProperty"]=> string(14) "staticProperty" ["property"]=> string(15) "propertyDefault" ["privateProperty"]=> string(22) "privatePropertyDefault" ["defaultlessProperty"]=> NULL ["inheritedProperty"]=> string(16) "inheritedDefault" }