| ユーザフォーラムで議論/質問 | マニュアル検索 | ハイライト | ハイライトオフ | ポータル | php spot |
オブジェクトの比較PHP4では、とてもシンプルな作法でオブジェクトを比較できます。すなわち、 二つのオブジェクトは同じ属性と同じ値を持ち、同じクラスのインスタンス である場合には等しいのです。二つのオブジェクトを比較演算子 (===)で比較した場合でも同様のルールとなります。 以下の例のようなコードを実行するとしましょう: 例1 PHP 4におけるオブジェクトの比較の例
<?php 上の例の出力は以下となります。 同じ引数で生成されたインスタンスの比較 o1 == o2 : TRUE o1 != o2 : FALSE o1 === o2 : TRUE o1 !== o2 : FALSE 違う引数で生成されたインスタンスの比較 o1 == o2 : FALSE o1 != o2 : TRUE o1 === o2 : FALSE o1 !== o2 : TRUE 親クラスとそのサブクラスのインスタンスの比較 o1 == o2 : FALSE o1 != o2 : TRUE o1 === o2 : FALSE o1 !== o2 : TRUE 複合的なオブジェクトの場合であっても、同じ比較ルールが適用されます。 以下の例では、Flagオブジェクトの連想配列 が格納されてるコンテナが生成されています。 例2 PHP4における複合的なオブジェクトの比較
<?php 上の例の出力は以下となります。 Composite objects u(o,p) and v(q,p) o1 == o2 : TRUE o1 != o2 : FALSE o1 === o2 : TRUE o1 !== o2 : FALSE u(o,p) and w(q) o1 == o2 : FALSE o1 != o2 : TRUE o1 === o2 : FALSE o1 !== o2 : TRUE |
各種マニュアル:
PHPマニュアル |
PEARマニュアル |
Smarty(英語)マニュアル |
PHP-GTKマニュアル |
「オブジェクトの比較」をGoogle検索
|