is_a

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

is_aVerifica si el objeto es de un cierto tipo o subtipo.

Descripción

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

Determina si el object_or_class dado es del tipo de objeto clase, o tiene clase como uno de sus supertipos.

Parámetros

object_or_class

Un nombre de clase o una instancia de un objeto.

class

El nombre de la clase o de la interfaz.

allow_string

Si este argumento vale false, el nombre de la clase en forma de string en el argumento object_or_class no está permitido. Esto permite evitar la llamada al autoloader si la clase no existe.

Valores devueltos

Retorna true si object_or_class es del tipo de objeto clase, o tiene clase como uno de sus supertipos, false en caso contrario.

Ejemplos

Ejemplo #1 Ejemplo con is_a()

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

// Crea un nuevo objeto
$WF = new WidgetFactory();

if (
is_a($WF, 'WidgetFactory')) {
echo
"sí, \$WF es siempre un objeto WidgetFactory\n";
}
?>

Ejemplo #2 Uso del operador instanceof

<?php

// definir una clase
class WidgetFactory
{
var
$oink = 'moo';
}

// crear un nuevo objeto
$WF = new WidgetFactory();

if (
$WF instanceof WidgetFactory) {
echo
'Sí, $WF es un WidgetFactory';
}
?>

Ver también