php异常无法捕捉?

在文件a.php中引入文件b.php,并在a.php中执行b.php中的一个函数c。此时c抛出异常,而在a中无法捕获。环境:nginx,php-fpm。
nginx直接502

不好意思。一下贴出代码和错误:
a.php中代码

https://img.mukewang.com/5c8f42db00016c8108000214.jpg

nginx 错误日志

https://img2.mukewang.com/5c8f42df00013a6908000061.jpg

此时在b中的pdo抛出了异常,这里是捕捉不到的,但是如果我在b.php文件的代码中直接catch(一下是b.php的代码):

https://img3.mukewang.com/5c8f42e00001fafd06980126.jpg
另外,php-fpm没有任何错误日志。

HUX布斯
浏览 904回答 4
4回答

冉冉说

说的是啥啊,图片都没有

慕工程0101907

Exception异常和Error错误都需要捕获 try { echo asdfasdf('1'); //未定义的函数 throw new Exception('asdasd'); } catch (Exception $e) { echo $e->getMessage(); } catch (Error $e) { echo $e->getMessage(); } 光捕获异常肯定不行的

慕妹3146593

php 7以上版本可以用Throwable try { echo 'php7'; } catch(Throwable $e){ throw new Exception('异常'); } 官方文档
打开App,查看更多内容
随时随地看视频慕课网APP