ReflectionClass::isInstance

(PHP 5, PHP 7)

ReflectionClass::isInstance检查类的实例

说明

public ReflectionClass::isInstance ( object $object ) : bool

检查对象是否为一个类的实例。

参数

object

待比较的对象。

返回值

成功时返回 TRUE, 或者在失败时返回 FALSE

范例

Example #1 ReflectionClass::isInstance() 相关例子

<?php
// Example usage
$class = new ReflectionClass('Foo');

if (
$class->isInstance($arg)) {
    echo 
"Yes";
}

// Equivalent to
if ($arg instanceof Foo) {
    echo 
"Yes";
}

// Equivalent to
if (is_a($arg'Foo')) {
    echo 
"Yes";
}
?>

以上例程的输出类似于:

Yes
Yes
Yes

参见

User Contributed Notes

dhairya lakhera 11-Feb-2016 04:55
class  TestClass { }

$TestObj=new TestClass();

$TestObj_assigned=$TestObj;
$TestObj_Refrenced=&$TestObj;
$TestObj_cloned=clone $TestObj;

$obj=new ReflectionClass('TestClass');

var_dump($obj->isInstance($TestObj));
var_dump($obj->isInstance($TestObj_assigned));
var_dump($obj->isInstance($TestObj_Refrenced));
var_dump($obj->isInstance($TestObj_cloned));