PHP中正常抛出和未捕获的异常将产生类似于此的输出:
Fatal error: Uncaught exception 'Exception' with message 'Insufficient permissions or something' in /home/codemonkey/foo/bar/File.php:143 Stack trace: #0 /home/codemonkey/dev/foo/bar/SomeOtherFile.php(85): foo\bar\File::fromUpload(Array) #1 /home/codemonkey/dev/foo/bar/OmniDataFileImport.php(35): foo\bar\OmniDataFileImport->performFileImportLogic() #2 [internal function]: foo\bar\OmniDataFileImport->post(Object(Request), false) #3 /home/codemonkey/dev/foo/vendor/tonic/lib/tonic.php(654): call_user_func_array(Array, Array) #4 /home/codemonkey/dev/foo/dispatch.php(22): Resource->exec(Object(Request)) #5 {main} thrown in /home/codemonkey/dev/foo/broadnet/files/File.php on line 143
消息和堆栈跟踪很酷,但我真的想了解更多信息。出于这个原因,我想用更多信息扩展Exception,例如局部变量及其值。问题是PHP可能仍然会输出相同的上述信息,但会改为使用文本“Uncaught exception'MyException'”。
我可以覆盖PHP显示未捕获异常的方式吗?我记得在PHP中读到一个函数,您可以将其设置为备份以捕获所有未捕获的异常。也许我可以使用该功能来格式化我自己的消息并终止该过程。
感谢您提供有关该主题的所有有用信息