PHP 7.0.20:异常代码为0

时间:2017-09-14 18:46:07

标签: php exception php-7

我得到错误代码为0的例外但我不知道为什么?异常的文本/消息是"在null"上调用成员函数getId();但属性"代码"是0.为什么它是0而不是实数?所有其他异常都有正确的错误代码。

我的php.ini中是错误还是配置错误?

有人有想法吗?

1 个答案:

答案 0 :(得分:6)

例外并不总是有代码。如果未明确定义,则错误代码默认为0。请参阅http://www.php.net/manual/en/exception.construct.php - 例外情况默认为​​""的邮件,代码0以及之前的NULL例外。

try {
    throw new Exception('Hello!');
} catch(Exception $e) {
    echo $e->getCode(); // prints 0
}

与PHP错误相同的事情:

try {
    $foo = new stdClass;
    $foo->fooBar();
} catch(Error $e) {
    echo $e->getCode(); // prints 0 too
    echo $e->getMessage(); // prints "Call to a member function fooBar() on null"
}