is_object

(PHP 4, PHP 5, PHP 7, PHP 8)

is_objectFinds whether a variable is an object

Description

is_object(mixed $value): bool

Finds whether the given variable is an object.

Parameters

value

The variable being evaluated.

Return Values

Returns true if value is an object, false otherwise.

Changelog

Version Description
7.2.0 is_object() now returns true for unserialized objects without a class definition (class of __PHP_Incomplete_Class). Previously false was returned.

Examples

Example #1 is_object() example

<?php
// Declare a simple function to return an
// array from our object
function get_students($obj)
{
if (!
is_object($obj)) {
return
false;
}

return
$obj->students;
}

// Declare a new class instance and fill up
// some values
$obj = new stdClass();
$obj->students = array('Kalle', 'Ross', 'Felipe');

var_dump(get_students(null));
var_dump(get_students($obj));
?>

See Also

  • is_bool() - Finds out whether a variable is a boolean
  • is_int() - Find whether the type of a variable is integer
  • is_float() - Finds whether the type of a variable is float
  • is_string() - Find whether the type of a variable is string
  • is_array() - Finds whether a variable is an array
add a note

User Contributed Notes 2 notes

up
95
peter dot nagel at portavita dot nl
13 years ago
Note: is_object(null) returns false

This should actually be part of the input/output specification at the top of this page.
up
4
mark at not4you dot com
12 years ago
Unserializes data as returned by the standard PHP serialize() function. If the unserialized object is not an array, it will be converted to one, particularily useful if it returns a __PHP_Incomplete_Class.

<?php
/**
*
* @param string $data Serialized data
*
* @return array Unserialized array
*/
function unserialize2array($data) {
$obj = unserialize($data);
if(
is_array($obj)) return $obj;
$arr = array();
foreach(
$obj as $k=>$v) {
$arr[$k] = $v;
}
unset(
$arr['__PHP_Incomplete_Class_Name']);
return
$arr;
}
?>
To Top