is_a

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

is_aChecks if the object is of this class or has this class as one of its parents

Description

is_a ( mixed $object , string $class_name [, bool $allow_string = FALSE ] ) : bool

Checks if the given object is of this class or has this class as one of its parents.

Parameters

object

A class name or an object instance.

class_name

The class name

allow_string

If this parameter set to FALSE, string class name as object is not allowed. This also prevents from calling autoloader if the class doesn't exist.

Return Values

Returns TRUE if the object is of this class or has this class as one of its parents, FALSE otherwise.

Changelog

Version Description
5.3.9 Added allow_string parameter
5.3.0 This function is no longer deprecated, and will therefore no longer throw E_STRICT warnings.
5.0.0 This function became deprecated in favour of the instanceof operator. Calling this function will result in an E_STRICT warning.

Examples

Example #1 is_a() example

<?php
// define a class
class WidgetFactory
{
  var 
$oink 'moo';
}

// create a new object
$WF = new WidgetFactory();

if (
is_a($WF'WidgetFactory')) {
  echo 
"yes, \$WF is still a WidgetFactory\n";
}
?>

Example #2 Using the instanceof operator in PHP 5

<?php
if ($WF instanceof WidgetFactory) {
    echo 
'Yes, $WF is a WidgetFactory';
}
?>

See Also

  • get_class() - Returns the name of the class of an object
  • get_parent_class() - Retrieves the parent class name for object or class
  • is_subclass_of() - Checks if the object has this class as one of its parents or implements it