在PHP8中使用instanceof操作符可以检测当前对象属于哪个类。语法格式如下:
objectName instanceof classname
下面我们用一个实例来讲解使用instanceof操作符检测对象类型。
本实例将将创建3个类,其中有两个类是父类和子类的关系,然后实例化子类对象,最后通过if语句判断该对象属于哪个类。参考代码:
<?php
class Fruit1 {}
class Fruit2 {}
class MyFruit extends Fruit1 { //定义Fruit1类的子类
private $type;
}
$fruit=new MyFruit (); //类的实例化对象$fruit
if($fruit instanceof Fruit1){ //判断对象是否属于父类Fruit1
echo "对象\$fruit属于父类Fruit1!<br />";
}
if($fruit instanceof Fruit2){ //判断对象是否属于父类Fruit2
echo "对象\$fruit属于父类Fruit2!<br />";
}
if($fruit instanceof MyFruit){ //判断对象是否属于子类Myoods
echo "对象\$fruit属于子类MyFruit!";
}
?>
以上代码在php8中的运行结果如下:
对象$fruit属于父类Fruit1!
对象$fruit属于子类MyFruit!
在PHP8中使用instanceof操作符检测对象类型就讲解完了。