ReflectionClass::getDefaultProperties
デフォルトプロパティを取得する
説明
public array ReflectionClass::getDefaultProperties()
注意:
このメソッドで 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
- ReflectionClass::getProperty