get_class_vars
(PHP 4, PHP 5, PHP 7)
get_class_vars — クラスのデフォルトプロパティを取得する
説明
get_class_vars
( string $class_name
) : array
指定したクラスのデフォルトプロパティを取得します。
パラメータ
class_name
- クラス名。
返り値
宣言されているプロパティのうち、現在のスコープから見えるものとそのデフォルト値を連想配列で返します。
返される配列要素は、変数名 => 値
の形式となります。
エラーが発生した場合は false
を返します。
例
例1 get_class_vars() の例
<?phpclass myclass { var $var1; // この変数にはデフォルト値がありません... var $var2 = "xyz"; var $var3 = 100; private $var4; // コンストラクタ function __construct() { // いくつかのプロパティを変更する $this->var1 = "foo"; $this->var2 = "bar"; return true; }}$my_class = new myclass();$class_vars = get_class_vars(get_class($my_class));foreach ($class_vars as $name => $value) { echo "$name : $value\n";}?>
上の例の出力は以下となります。
var1 : var2 : xyz var3 : 100
例2 get_class_vars() でのスコープの挙動
<?phpfunction format($array){ return implode('|', array_keys($array)) . "\r\n";}class TestCase{ public $a = 1; protected $b = 2; private $c = 3; public static function expose() { echo format(get_class_vars(__CLASS__)); }}TestCase::expose();echo format(get_class_vars('TestCase'));?>
上の例の出力は以下となります。
// 5.0.0 a| * b| TestCase c a| * b| TestCase c // 5.0.1 - 5.0.2 a|b|c a|b|c // 5.0.3 + a|b|c a