is_a

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

is_aVerifica se um objeto é ou herda de uma classe

Descrição

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

Determina se o object_or_class é do tipo class, ou se tem class como um dos tipos herdados.

Parâmetros

object_or_class

O nome da classe ou o objeto.

class

O nome da classe.

allow_string

Se esse parâmetro for configurado para false, um nome de classe em string em object_or_class não será permitido. Isso evita chamar o autoloader de uma classe inexistente.

Valor Retornado

Retorna true se o object_or_class for do tipo class ou se tiver class como um dos tipos herdados, false caso contrário.

Exemplos

Example #1 Exemplo de is_a()

<?php
// Define uma classe
class WidgetFactory
{
  var $oink = 'moo';
}

// Cria um objeto
$WF = new WidgetFactory();

if (is_a($WF, 'WidgetFactory')) {
  echo "\$WF implementa WidgetFactory\n";
}
?>

Example #2 Utilizando o operador instanceof

<?php
if ($WF instanceof WidgetFactory) {
    echo "\$WF implementa WidgetFactory\n";
}
?>

Veja Também