ReflectionClass::isInstance

(PHP 5, PHP 7, PHP 8)

ReflectionClass::isInstance检查类是否为实例

说明

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

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

参数

object

要比较的对象。

返回值

成功时返回 true,失败时返回 false

示例

示例 #1 ReflectionClass::isInstance() 相关示例

<?php
// 示例用法
$class = new ReflectionClass('Foo');

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

// 等效于
if ($arg instanceof Foo) {
echo
"Yes";
}

// 等效于
if (is_a($arg, 'Foo')) {
echo
"Yes";
}
?>

上面的示例将输出类似以下的内容

Yes
Yes
Yes

参见

添加笔记

用户贡献的笔记 1 个笔记

0
dhairya lakhera
8 年前
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));
To Top