#7.21 php ООП Оператор проверки типа instanceof
Primary tabs
Оператор проверки типа проверяет соместимость класса объекта, стоящего слева от instanceof с классом или интерфейсом, стоящим справа:
$Obj instanceof Class
В самом простом случае оператор instanceof позволяет проверить, является ли объект экземпляром некоторого класса, например,
<?php
class A
{
}
class B
{
}
$a = new A;
var_dump($a instanceof A);
var_dump($a instanceof B);
Результат:
bool(true)
bool(false)
При проверке принадлежности объекта производного класса базовому классу instanceof даёт положительный ответ:
<?php
class ParentClass
{
}
class Child extends ParentClass
{
}
$obj = new Child;
var_dump($obj instanceof ParentClass);
var_dump($obj instanceof Child);
Результат:
bool(true)
bool(true)
instanceof может использоваться также для проверки того, реализует ли класс объекта некоторый интерфейс:
<?php
interface MyInterface
{
}
class MyClass implements MyInterface
{
}
$obj = new MyClass;
var_dump($obj instanceof MyInterface);
Результат:
bool(true)
- Log in to post comments
- 967 reads