オブジェクトもしくはクラスにプロパティが存在するかどうかを調べる
$object_or_class
$property
この関数は、与えられたプロパティ property が 指定されたクラスに存在するかどうかを確認します。
property
注意: isset とは対照的に、 プロパティの値が null の場合でも property_exists は true を返します。
注意:
isset とは対照的に、 プロパティの値が null の場合でも property_exists は true を返します。
null
true
object_or_class
確認するクラス名、もしくはクラスのオブジェクトを指定します。
プロパティ名を指定します。
プロパティが存在している場合は true、存在していない場合に false を返します。
false
例1 property_exists の例
<?php class myClass { public $mine; private $xpto; static protected $test; static function test() { var_dump(property_exists('myClass', 'xpto')); //true } } var_dump(property_exists('myClass', 'mine')); //true var_dump(property_exists(new myClass, 'mine')); //true var_dump(property_exists('myClass', 'xpto')); //true var_dump(property_exists('myClass', 'bar')); //false var_dump(property_exists('myClass', 'test')); //true myClass::test(); ?>
注意: この関数を使うと、未知のクラスに対しては登録済みの autoloader を使用します。
この関数を使うと、未知のクラスに対しては登録済みの autoloader を使用します。
注意: property_exists 関数は、マジックメソッド __get を使ってアクセスするプロパティを検出することはできません。
property_exists 関数は、マジックメソッド __get を使ってアクセスするプロパティを検出することはできません。
__get