我得到错误代码为0的例外但我不知道为什么?异常的文本/消息是"在null"上调用成员函数getId();但属性"代码"是0.为什么它是0而不是实数?所有其他异常都有正确的错误代码。
我的php.ini中是错误还是配置错误?
有人有想法吗?
答案 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"
}