PHP 8.4.0 RC3 available for testing

is_object

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

is_objectПроверяет, представляет ли собой переменная объект

Описание

is_object(mixed $value): bool

Проверяет, представляет ли собой переменная объект.

Список параметров

value

Проверяемая переменная.

Возвращаемые значения

Возвращает true, если значение value — объект, иначе false.

Список изменений

Версия Описание
7.2.0 Теперь функция is_object() возвращает true для десериализованных объектов без определения класса (класс __PHP_Incomplete_Class). Раньше возвращалось false.

Примеры

Пример #1 Пример использования функции is_object()

<?php

// Объявляем простую функцию, которая возвращает
// массив из объекта
function get_students($obj)
{
if (!
is_object($obj)) {
return
false;
}

return
$obj->students;
}

// Создаём новый экземпляр класса
// и заполняем значениями

$obj = new stdClass();
$obj->students = array('Келли', 'Росс', 'Филипп');

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

?>

Смотрите также

  • is_bool() - Проверяет, принадлежит ли переменная к логическому типу
  • is_int() - Проверяет, представляет ли собой переменная целое число
  • is_float() - Проверяет, представляет ли собой переменная число с плавающей точкой
  • is_string() - Проверяет, представляет ли собой тип переменной строку
  • is_array() - Определяет, представляет ли собой переменная массив

Добавить примечание

Примечания пользователей 3 notes

up
96
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
13 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;
}
?>
up
0
monique at nijboer dot it
1 month ago
I would expect a reference to is_a() function here.
if you would test if an object is of an specific type use is_a()
https://www.php.net/manual/en/function.is-a.php
To Top