is_a

(PHP 4 >= 4.2.0, PHP 5, PHP 7, PHP 8)

is_aПроверяет, принадлежит ли объект типу или подтипу

Описание

is_a(mixed $object_or_class, string $class, bool $allow_string = false): bool

Функция определяет, принадлежит ли объект или класс object_or_class типу class, или относится ли тип объекта или класса к подтипу супертипа class.

Список параметров

object_or_class

Название класса или экземпляр объекта.

class

Название класса или интерфейса.

allow_string

Со значением false функция определит соответствие типов, только если в параметр object_or_class передали экземпляр объекта, а не название класса. Это также предотвратит вызов автозагрузчика, если класс не загрузили прежде.

Возвращаемые значения

Функция возвращает true, если тип object_or_class принадлежит типу class или относится к подтипу супертипа class, иначе возвращает значение false.

Примеры

Пример #1 Пример проверки принадлежности типа функцией is_a()

<?php

// Определяем класс
class WidgetFactory
{
var
$oink = 'moo';
}

// Создаём новый объект
$WF = new WidgetFactory();

if (
is_a($WF, 'WidgetFactory')) {
echo
"Да, тип объекта \$WF по-прежнему принадлежит типу WidgetFactory\n";
}

?>

Пример #2 Пример проверки типа оператором instanceof

<?php

// Определяем класс
class WidgetFactory
{
var
$oink = 'moo';
}

// Создаём новый объект
$WF = new WidgetFactory();

if (
$WF instanceof WidgetFactory) {
echo
'Да, тип объекта $WF принадлежит типу WidgetFactory';
}

?>

Смотрите также

  • get_class() - Возвращает имя класса, которому принадлежит объект
  • get_parent_class() - Получает имя родительского класса для объекта или класса
  • is_subclass_of() - Проверяет, принадлежит ли объект к потомкам класса, или реализует ли объект или родители объекта интерфейс