PHP 在函数内尝试 catch 不起作用。为什么?

问题描述 投票:0回答:1

我尝试捕获函数内的异常,但它不起作用。

function dbquery ($mysqli, $query){
  try {
    $result = mysqli_query ($mysqli, $query);
  }
  catch (Exception $e) {
    echo "Caught exception: ".$e->getMessage();                        
    $result = false;
  }
  return $result;
}            

函数中未捕获异常,调用函数时会抛出 Uncaught mysqli_sql_exception。我究竟做错了什么?我不相信我必须在每个函数调用周围创建一个 try 块......

php exception
1个回答
0
投票

您将无法捕获

Exception $e
可能出现的所有错误。试试
Throwable $e

有关更多信息,请参考这个问题(这不是 PHP 问题,但它是一个类似的问题): 在 try catch 中使用 Throwable 和 Exception 的区别

© www.soinside.com 2019 - 2024. All rights reserved.