在PHP8中使用instanceof操作符可以检测当前对象属于哪个类。语法格式如下:
objectName instanceof classname

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