PHP 变量处理函数

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"
}