php - PHP 7.0.20:异常的代码为0

标签 php exception php-7

我收到错误代码为0的异常,但为什么不呢?异常的文本/消息是“在null上调用成员函数getId()”,但属性“代码”为0。为什么它为0而不是实数?所有其他异常均具有正确的错误代码。

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

有人知道吗?

最佳答案

异常并不总是具有代码。如果未明确定义,则错误代码默认为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"
}

关于php - PHP 7.0.20:异常的代码为0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46226278/

相关文章:

java - 来自 @ControllerAdvice 的 Spring basePackageClasses 不起作用

php - 当我构建(配置)phpspreadsheet的源代码时,由于找不到apxs并且未构建apache,因此出现错误

mysql - 基表或 View 已存在! (拉拉维尔航海者)

PHP 如何使用复选框形式将多个条目添加到数据库中?表格只输入最后一项?

php - 如何在ElasticSearch中的某些索引中搜索

php - ssh2 上的 opendir 永远不会停止

PHP 返回类型提示,对象或 bool 值?

php - 如何将 If then 语句放入 php 中的 mysql_fetch_array() 语句中

java - 读取带有附件文件的消息时缺少起始边界异常

mysql - Clojure MySQL语法错误异常("[...] near ' ???????????????? ?' [...]")