PHP には比較演算子 == があり、これを使用して 2 つのオブジェクト変数の単純な比較を実行できます。両方が同じクラスに属し、対応するプロパティの値が同じ場合は true を返します。
PHP の === Operator は 2 つのオブジェクト変数を比較し、それらが同じクラスの同じインスタンスを参照している場合にのみ true を返します
次の 2 つのクラスを使用しますこれらの演算子を使用してオブジェクトを比較するには
<?php class test1{ private $x; private $y; function __construct($arg1, $arg2){ $this->x=$arg1; $this->y=$arg2; } } class test2{ private $x; private $y; function __construct($arg1, $arg2){ $this->x=$arg1; $this->y=$arg2; } } ?>
$a=new test1(10,20); $b=new test1(10,20); echo "two objects of same class"; echo "using == operator : "; var_dump($a==$b); echo "using === operator : "; var_dump($a===$b);
two objects of same class using == operator : bool(true) using === operator : bool(false)
$a=new test1(10,20); $c=$a; echo "two references of same object"; echo "using == operator : "; var_dump($a==$c); echo "using === operator : "; var_dump($a===$c);
two references of same object using == operator : bool(true) using === operator : bool(true)
$a=new test1(10,20); $d=new test2(10,20); echo "two objects of different classes"; echo "using == operator : "; var_dump($a==$d); echo "using === operator : "; var_dump($a===$d);
出力には次の結果が表示されます
two objects of different classes using == operator : bool(false) using === operator : bool(false)
以上がPHP比較オブジェクトの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。