array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'es', ), 'this' => array ( 0 => 'function.is-a.php', 1 => 'is_a', ), 'up' => array ( 0 => 'ref.classobj.php', 1 => 'Funciones de Clases/Objetos', ), 'prev' => array ( 0 => 'function.interface-exists.php', 1 => 'interface_exists', ), 'next' => array ( 0 => 'function.is-subclass-of.php', 1 => 'is_subclass_of', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'es', 'path' => 'reference/classobj/functions/is-a.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
(PHP 4 >= 4.2.0, PHP 5, PHP 7, PHP 8)
is_a — Comprueba si un objeto es de una clase o tiene esta clase como una de sus madres
Comprueba si el objeto dado por object
es de esta clase o tiene
esta clase como una de sus madres.
object
Un nombre de clase o una instancia de objeto.
class_name
El nombre de la clase
allow_string
Si este parámetro se establece a false
, no se permite una cadena de nombre de la clase como
object
. Esto también evita llamar al autocargador si la clase no existe.
Devuelve true
si el objeto es de esta clase o tiene esta clase como una de sus
madres, false
si no.
Versión | Descripción |
---|---|
5.3.9 |
Se añadió el parámetro allow_string
|
5.3.0 |
Esta función ya no está obsoleta, y por lo tanto
ya no lanza advertencias de tipo E_STRICT .
|
5.0.0 |
Esta funcion se volvió obsoleta en favor del operador
instanceof.
Llamar a esta función resultará en una
advertencia de tipo E_STRICT .
|
Ejemplo #1 Ejemplo de is_a()
<?php
// definir una clase
class FábricaTrastos
{
var $oink = 'moo';
}
// crear un nuevo objeto
$WF = new FábricaTrastos();
if (is_a($WF, 'FábricaTrastos')) {
echo "Sí, \$WF es todavía un FábricaTrastos\n";
}
?>
Ejemplo #2 Usar el operador instanceof en PHP 5
<?php
if ($WF instanceof FábricaTrastos) {
echo 'Sí, $WF es un FábricaTrastos';
}
?>