编辑这个页面须要登录或更高权限!

PHP Error & Loggings 错误处理和日志函数

这些是处理错误处理和日志记录的函数。它们使您可以定义自己的错误处理规则,以及修改错误记录方式。这使您可以更改和增强错误报告以适合您的需求。

使用这些日志记录函数,您可以将消息直接发送到其他计算机,电子邮件,系统日志等,因此您可以有选择地记录和监视应用程序和网站的最重要部分。

安装

错误和日志记录函数是PHP核心的一部分。无需安装即可使用这些函数。

运行时配置

这些函数的行为受php.ini中的设置影响。这些设置在下面定义。

名称默认变更日志
error_reportingNULL
display_errors"1"
display_startup_errors"0"自PHP 4.0.3起可用。
log_errors"0"
log_errors_max_len"1024"自PHP 4.3.0起可用。
ignore_repeated_errors"0"自PHP 4.3.0起可用。
ignore_repeated_source"0"自PHP 4.3.0起可用。
report_memleaks"1"自PHP 4.3.0起可用。
track_errors"0"
html_errors"1"PHP <= 4.2.3中的PHP_INI_SYSTEM 自PHP 4.0.2起可用。
docref_root""自PHP 4.3.0起可用。
docref_ext""自PHP 4.3.2起可用。
error_prepend_stringNULL
error_append_stringNULL
error_logNULL
warn_plus_overloadingNULL自PHP 4.0.0起该选项不再可用

PHP 错误和日志记录常量

版本-表示支持常量的PHP的最早版本。

您可以在配置php.ini文件时使用任何常量。


常量和说明版本
1

E_ERROR

致命的运行时错误。无法修复的错误。脚本的执行被暂停


2

E_WARNING

非致命的运行时错误。脚本的执行不会停止


4

E_PARSE

编译时解析错误。解析错误应仅由解析器生成


8

E_NOTICE

运行时通知。该脚本发现了可能是错误的内容,但在正常运行脚本时也可能发生


16

E_CORE_ERROR

PHP启动时发生致命错误。这就如同PHP核心中的 E_ERROR

4
32

E_CORE_WARNING

PHP启动时发生非致命错误。这就如同PHP核心中的 E_WARNING

4
64

E_COMPILE_ERROR

致命的编译时错误。这就如同Zend脚本引擎生成的 E_ERROR

4
128

E_COMPILE_WARNING

非致命的编译时错误。这就如同Zend脚本引擎生成的 E_WARNING

4
256

E_USER_ERROR

用户生成的致命错误。就像程序员使用PHP函数 trigger_error() 设置的 E_ERROR 一样

4
512

E_USER_WARNING

非致命的用户生成的警告。这就如同程序员使用PHP函数 trigger_error() 设置的 E_WARNING 一样

4
1024

E_USER_NOTICE

用户生成的通知。就像程序员使用PHP函数 trigger_error() 设置的 E_NOTICE 一样

4
2048

E_STRICT

运行时通知。PHP建议对您的代码进行更改以帮助代码的互操作性和兼容性

5
4096

E_RECOVERABLE_ERROR

可捕获的致命错误。这就如同一个 E_ERROR,但是可以由用户定义的句柄捕获(另请参见 set_error_handler() )

5
8191

E_ALL

除 E_STRICT 级别外的所有错误和警告

5

函数列表

P版本-表示支持该函数的PHP的最早版本。

序号函数描述
版本
1debug_backtrace()生成 backtrace4
2debug_print_backtrace()打印 backtrace5
3error_get_last()获取最后发生的错误5
4error_log()将错误发送到服务器错误日志,文件或远程目标4
5error_reporting()指定报告哪些错误4
6restore_error_handler()恢复先前的错误处理程序4
7restore_exception_handler()恢复先前的异常处理程序5
8set_error_handler()设置用户定义的函数来处理错误4
9set_exception_handler()设置用户定义的函数来处理异常5
10trigger_error()创建用户定义的错误消息4
11user_error()trigger_error()的别名4