PHP-对每个错误或警告执行一些代码

PHP-对每个错误或警告执行一些代码,php,error-handling,Php,Error Handling,我正在寻找一种通用方法,以便对每个错误/警告等执行一些代码 我有多个网站具有相同的代码库,我想在一个集中的地方收集所有的错误。为此,我需要在每次抛出错误时调用回调 是否可以仅使用PHP(代码或配置)实现这一点,或者我需要转到web服务器级别?简言之,否。如果PHP崩溃(从而生成错误),则无法轻松收集该错误,因为调用的脚本将在遇到错误后停止 通过某种方式解决了这一问题,但许多错误类型(E_错误、E_解析、E_核心错误、E_核心警告、E_编译错误、E_编译警告和大多数E_严格)都不会以这种方式捕获

我正在寻找一种通用方法,以便对每个错误/警告等执行一些代码

我有多个网站具有相同的代码库,我想在一个集中的地方收集所有的错误。为此,我需要在每次抛出错误时调用回调


是否可以仅使用PHP(代码或配置)实现这一点,或者我需要转到web服务器级别?

简言之,否。如果PHP崩溃(从而生成错误),则无法轻松收集该错误,因为调用的脚本将在遇到错误后停止

通过某种方式解决了这一问题,但许多错误类型(E_错误、E_解析、E_核心错误、E_核心警告、E_编译错误、E_编译警告和大多数E_严格)都不会以这种方式捕获

如果错误是由产生异常的类和方法创建的,请使用结构捕获尽可能多的异常

可以想象,您可以设置您的环境,使每个PHP调用实际上都是对主PHP文件的调用,然后该文件执行PHP脚本并收集输出并将其显示给用户,但这会带来很多不必要的复杂性

如果您正在运行(其中PHP调用是通过AJAX调用的,而不是URL中的更改),则可以设置一个JavaScript侦听器来捕获意外结果并存储它们。我现在就是这样做的


如果还有其他捕获错误的技巧,我很想听听其他人的意见。

以下错误类型不能用
set\u error\u handler()
中的用户定义函数来处理:E\u error、E\u PARSE、E\u CORE\u error、E\u CORE\u警告、E\u COMPILE\u警告,以及大多数E\u STRICT都是在set\u error\u handler()文件中提出的被称为。