0

私の知る限り、ActionScript のis演算子は次のことを行います: (間違っている場合は訂正してください)

  1. 変数または式が特定のデータ型と互換性があるかどうかをテストします。

  2. 継承階層を調べる

  3. オブジェクトが特定のクラスのインスタンスであるか、特定のクラスの子 (または孫、ひ孫、ひひひ孫など) であるかを確認するために使用できます。

  4. オブジェクトが特定のインターフェースを実装するクラスのインスタンスであるかどうかを確認します

今、 PHPで Actionscript の " is " 演算子に似ている/似ているものを知りたいですか?

4

3 に答える 3

1

PHPでは、構築がありますinstanceof

$a instanceof MyClass
于 2013-10-22T06:34:50.993 に答える
0

ActionScript のis演算子は、PHP のinstanceof演算子と同等です。

<?php
class Person {}
$p1 = new Person();
$p2 = new Person();
echo ($p1 instanceof $p2)?"True":"False"; //o/p: True bcz both $p1 & $p2 are the instances of same class
echo ($p1 instanceof Person)?"True":"False";//True , checking through class name

interface LoyalCustomer{}
class Customer extends Person implements LoyalCustomer {}
$c1 = new Customer();
echo ($c1 instanceof $p1)?"True":"False";//True

class RegularCustomer extends Customer{}
$rc1 = new RegularCustomer();
echo ($rc1 instanceof $p1)?"True":"False";//True
echo ($rc1 instanceof $c1)?"True":"False";//True
echo ($rc1 instanceof RegularCustomer)?"True":"False";//True
echo ($rc1 instanceof Customer)?"True":"False";//True
echo ($rc1 instanceof Person)?"True":"False";//True

echo ($p1 instanceof LoyalCustomer)?"True":"False";//False
echo ($c1 instanceof LoyalCustomer)?"True":"False";//True
echo ($rc1 instanceof LoyalCustomer)?"True":"False";//True
echo ($p1 instanceof $rc1)?"True":"False";//False
?>
于 2013-10-22T12:42:09.570 に答える
0

is」演算子は、データ型メンバーシップの比較/テスト (型チェック) に使用されます。PHP では、instanceofを使用してオブジェクトの特定のタイプを確認できます。

$obj = new A();

if ($obj instanceof A) {
   ...
}
于 2013-10-22T06:47:50.327 に答える