デフォルトプロパティを取得する

# ReflectionClass::getDefaultProperties

(PHP 5, PHP 7, PHP 8)

ReflectionClass::getDefaultProperties — デフォルトプロパティを取得する

### 説明

public function ReflectionClass::getDefaultProperties(): array

クラスのデフォルトプロパティ (継承したプロパティを含む) を取得します。

> 注意:

> このメソッドで static プロパティを扱えるのは、内部クラスの場合だけです。 ユーザー定義クラスで使った場合は、 クラスの static なプロパティのデフォルト値はこのメソッドでは追跡できません。

### パラメータ

この関数にはパラメータはありません。

### 戻り値

デフォルトプロパティの配列を返します。プロパティ名が配列のキー、 そしてそのプロパティのデフォルト値が配列の値 (デフォルト値が存在しない場合は `null`) となります。 この関数はstaticプロパティとそうでないプロパティを区別せず、 アクセス修飾子も考慮しません。

### 例

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

上の例の出力は以下となります。

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

### 参考

- ReflectionClass::getProperties() - プロパティを取得する
- ReflectionClass::getStaticProperties() - staticプロパティを取得する
- ReflectionClass::getProperty() - クラスのプロパティを表す ReflectionProperty を取得する

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open