(PHP 4 >= 4.2.0, PHP 5, PHP 7, PHP 8)
is_a — Проверяет, принадлежит ли объект типу или подтипу
Функция определяет, принадлежит ли объект или класс 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';
}
?>