PHP is_object() 函数检查变量是否是对象。如果变量是对象,该函数返回 true,否则返回 false。
语法
is_object(variable)
参数
variable | 必需。 指定要计算的变量。 |
返回值
如果变量为一个对象,则返回 true,否则为 false。
示例:
下面的示例显示了 is_object() 函数的用法。
<?php
$x = array(1, 2, 3);
var_dump(is_object(new ArrayIterator($x))); //返回:bool(true)
var_dump(is_object(new ArrayIterator())); //返回:bool(true)
var_dump(is_object(new stdClass())); //返回:bool(true)
echo "\n";
var_dump(is_object(10)); //返回:bool(false)
var_dump(is_object('xyz')); //返回:bool(false)
var_dump(is_object(true)); //返回:bool(false)
var_dump(is_object($x)); //返回:bool(false)
?>
上述代码的输出将是:
bool(true)
bool(true)
bool(true)
bool(false)
bool(false)
bool(false)
bool(false)
示例:
再考虑一个示例来理解is_object() 函数的概念。
<?php
//创建返回颜色的函数
//对象的属性
function get_colors($x) {
if (!is_object($x)) {
return false;
}
return $x->colors;
}
//创建一个新的类实例并且
//定义其颜色属性
$obj = new stdClass();
$obj->colors = array('Red', 'Green', 'Blue');
var_dump(get_colors(null));
echo "\n";
var_dump(get_colors($obj));
?>
上述代码的输出将是:
bool(false)
array(3) {
[0]=>
string(3) "Red"
[1]=>
string(5) "Green"
[2]=>
string(4) "Blue"
}