我必须编写一个日志类来记录来自异常的数据。为了简单起见,我想知道是否可以在'trace'数组内检索数据,并通过在PHP中添加异常实例的'message'和'code'属性来扩展它。但我不确定是否所有在PHP中抛出的异常都保证至少有这三个属性('trace','message'和'code')。还建议是否有更好的方法来记录事情。是否所有的PHP异常都具有“跟踪”,“消息”和“代码”属性?
1
A
回答
1
首先,最好使用已经证明是好的代码。 PHP社区广泛使用Monolog库检查它。如果你仍然想写你自己的记录器,你应该坚持PSR-3 rules
回答你的问题。抛出的PHP对象必须是Exception类的一个实例或Exception的一个子类。
不过你,如果你看一个异常
public function __construct($message = null, $code = 0, Exception $previous = null);
你可以抛出空exception.But始终存在一些代码,文件跟踪和代码的构造。代码和消息可以是空的。
由于每个用户异常扩展基类你可以阅读更多关于它的http://php.net/manual/en/language.exceptions.php
+0
我同意最好坚持已经写好的课程。但他们不符合我的要求。要么他们太大或错过我期待的重要功能。 –
+0
我认为独白符合99%的需求。我在所有项目中都使用它,并且可以高度定制,还有很多渠道,处理程序等。 – Robert
相关问题
- 1. 如何跟踪所有的消息
- 2. 跟踪程序中的所有异常
- 3. .NET异常:每种异常类型是否都有自己的消息文本?
- 4. 子类是否具有父类的所有属性和方法?
- 5. 自定义异常vs内置异常非常具有描述性的消息
- 6. nlog异常布局来格式化异常类型,消息和堆栈跟踪
- 7. 是否有可能跟踪Eclipse中的资源只读属性?
- 8. 异常和堆栈跟踪
- 9. 有没有可以跟踪/记录托管代码的工具?
- 10. 是否有所有可能的PHP imap_last_error()消息的列表?
- 11. 检查属性是否具有属性
- 12. 是否所有的异常类型都在普通的旧“异常”之下?
- 13. 如何记录rxJava2的所有异常的堆栈跟踪?
- 14. 是否PHP代码不跑?没有错误消息
- 15. PHP致命错误:未捕获的异常“异常”有消息
- 16. 清洁代码:对象是否具有公共属性?
- 17. 所有代码后活动的setContentView调用不执行(无异常或消息)
- 18. 是否有可能跟踪所有传出的WCF呼叫?
- 19. Java异常跟踪
- 20. 的PropertyChanged所有属性:消息=找不到属性
- 21. 是否有一个属性会隐式假定具有DataContract的类的所有成员都是数据元?
- 22. 是否有可能在PHP代码中跟踪浏览器历史记录?
- 23. 是否所有的音频格式都有一个标题的消息长度
- 24. 在ActionScript 3中,跟踪值对象的所有属性
- 25. 只跟踪同一类型的消息和线程跟踪 - C#
- 26. 为什么异常消息属性是只读的?
- 27. try中的异常的消息属性是否为空字符串或NULL?
- 28. 代码跟踪和PrestaShop
- 29. 有什么方法可以跟踪WCF中的所有异常吗?
- 30. 如何跟踪Chronon的所有内容(全部代码)?
'\ Exception',将至少有相同的功能。所以一般来说你应该基于\ Exception类。 http://php.net/manual/en/class.exception.php –