PHP返回值。。。我错过了什么?

PHP返回值。。。我错过了什么?,php,return-value,return-type,Php,Return Value,Return Type,函数返回值($checkZero)不应该是false(布尔值)吗? 下面的结果是“零就是零”。我错过了什么 class CheckZero { function __construct() { $zero = 3; if ($zero === 0) { return true; } else { return false; } } } $checkZe

函数返回值($checkZero)不应该是false(布尔值)吗? 下面的结果是“零就是零”。我错过了什么

class CheckZero {
    function __construct() {
        $zero = 3;
        if ($zero === 0) {
            return true;
        }
        else {
            return false;
        }
    }
}

$checkZero = new CheckZero();
if (!$checkZero) {
    echo 'zero is not zero';
}
else {
    echo 'zero is zero';
}

不能从类构造函数中
返回
。返回的是新创建的对象

如果您
var\u dump
返回值,您将看到返回了一个对象:

object(CheckZero)#1 (0) { } 对象(检查零)#1(0){ } 建造商原型:

void __construct ([ mixed $args [, $... ]] )
这意味着
\uu construct
的返回值将被丢弃且无用,因为返回的是对象本身


如果运行
var\u dump($checkZero)
然后您会看到它是clas
CheckZero

完美的对象。我知道我忽略了一些显而易见的事情。非常感谢。