php8.5
Home/ Manual/ reflection / reflectionclass/ ReflectionClass::getDefaultProperties

ReflectionClass::getDefaultProperties

PHP function Edit on GitHub ✎

(PHP 5, PHP 7, PHP 8)

Gets default properties

Description

ReflectionClass::getDefaultProperties(): array

Gets default properties from a class (including inherited properties).

Note

This method only works for static properties when used on internal classes. The default value of a static class property can not be tracked when using this method on user defined classes.

Parameters Parameters

Return Values

An array of default properties, with the key being the name of the property and the value being the default value of the property or null if the property doesn't have a default value. The function does not distinguish between static and non static properties and does not take visibility modifiers into account.

Examples

ReflectionClass::getDefaultProperties example

php
<?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());
?>

The above example will output:

output
array(5) {
  ["staticProperty"]=>
  string(14) "staticProperty"
  ["property"]=>
  string(15) "propertyDefault"
  ["privateProperty"]=>
  string(22) "privatePropertyDefault"
  ["defaultlessProperty"]=>
  NULL
  ["inheritedProperty"]=>
  string(16) "inheritedDefault"
}

See Also

  • ReflectionClass::getProperties
  • ReflectionClass::getStaticProperties
  • ReflectionClass::getProperty

Source: reference/reflection/reflectionclass/getdefaultproperties.xml · from the official PHP manual (php/doc-en)