Note: is_object(null) returns false
This should actually be part of the input/output specification at the top of this page.
(PHP 4, PHP 5, PHP 7, PHP 8)
is_object — Проверяет, представляет ли собой переменная объект
value
Проверяемая переменная.
Версия | Описание |
---|---|
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));
?>
Note: is_object(null) returns false
This should actually be part of the input/output specification at the top of this page.
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;
}
?>
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