Heim > Fragen und Antworten > Hauptteil
测试了一下:
<?php
class Game {
}
$obj = new Game();
if(empty($obj)) {
echo '空的';
} else {
echo "不空";
}
?>
怪我咯2017-04-11 10:09:18
参考PHP文档:empty — 检查一个变量是否为空
很显然 obj 不是空的~
测试一下:
print_r($obj);
Game Object ( )
迷茫2017-04-11 10:09:18
对象都已经被实例化了, 那么empty
肯定是不会空的, 我理解的empty
empty(''); //true
empty(0); //true
empty('0'); //true
empty(NULL); //true
empty([]); //true
empty(array(array())); //false
$a;//只定义不赋值
empty($a);//true
class AA {}
$aa = new AA();
empty($aa);// false, 对象真实存在, 不为空
class BB {
public $name;
}
$bb = new BB();
empty($bb->name); //true
阿神2017-04-11 10:09:18
这个很明显不为空啊, empty 一般是判断变量用的, 其实你这判断一个对象 也没实际作用,
你new一个空对象, 跟赋值一个空变量或者空数组是不一样的,
或者你可以打印出来看下, object(Game)[1]
这是打印出来的,