是否所有PHP异常都有';跟踪'';消息';和';代码';财产?
我必须编写一个日志类来记录来自异常的数据。为了使事情更简单,我想知道是否可以在“trace”数组中检索数据,并通过在PHP中添加异常实例的“message”和“code”属性来扩展它。但我不确定PHP中所有抛出的异常是否保证至少有这三个属性(“跟踪”、“消息”和“代码”)。还建议是否有更好的方法来记录事情。首先,最好使用已经证明是好的代码。PHP社区广泛使用库检查它。如果你仍然想写你自己的日志,你应该坚持 回答你的问题。抛出的PHP对象必须是Exception类的实例或Exception的子类 但如果你看一个异常的构造函数,你会发现是否所有PHP异常都有';跟踪'';消息';和';代码';财产?,php,exception,logging,Php,Exception,Logging,我必须编写一个日志类来记录来自异常的数据。为了使事情更简单,我想知道是否可以在“trace”数组中检索数据,并通过在PHP中添加异常实例的“message”和“code”属性来扩展它。但我不确定PHP中所有抛出的异常是否保证至少有这三个属性(“跟踪”、“消息”和“代码”)。还建议是否有更好的方法来记录事情。首先,最好使用已经证明是好的代码。PHP社区广泛使用库检查它。如果你仍然想写你自己的日志,你应该坚持 回答你的问题。抛出的PHP对象必须是Exception类的实例或Exception的子类
public function __construct($message = null, $code = 0, Exception $previous = null);
您可以抛出空异常。但总会有代码、文件、跟踪和代码。代码和消息可以为空
您可以在上了解更多信息。首先,最好使用已经被证明是好的代码。PHP社区广泛使用库检查它。如果你仍然想写你自己的日志,你应该坚持 回答你的问题。抛出的PHP对象必须是Exception类的实例或Exception的子类 但如果你看一个异常的构造函数,你会发现
public function __construct($message = null, $code = 0, Exception $previous = null);
您可以抛出空异常。但总会有代码、文件、跟踪和代码。代码和消息可以为空
由于每个用户异常都在扩展基类
\exception
,因此它至少具有相同的功能。所以一般来说,您应该基于\异常类。由于每个用户异常都在扩展基类\exception
,因此它至少具有相同的功能。所以一般来说,您应该基于\异常类。我同意,最好还是坚持使用已经编写的类。但它们不符合我的要求。要么是太大,要么是错过了我正在寻找的重要功能。我认为独白符合99%的需求。我在所有项目中都使用它,它可以高度定制,还有很多通道、处理程序等。我同意最好还是坚持使用已经编写的类。但它们不符合我的要求。要么是太大,要么是错过了我正在寻找的重要功能。我认为独白符合99%的需求。我在所有项目中都使用它,它可以高度定制,还有很多渠道、处理程序等。