PHP开启错误日志详细说明
PHP代码开启错误信息:
ini_set("display_errors", "On");//打开错误提示 ini_set("error_reporting", E_ALL);//显示所有错误
错误级别包括:
E_ALL - 所有错误和警告(包括PHP 5.4.0中的E_STRICT) E_ERROR - 致命的运行时错误 E_RECOVERABLE_ERROR - 几乎致命的运行时错误 E_WARNING - 运行时警告(非致命错误) E_PARSE - 编译时解析错误 E_NOTICE - 运行时通知(这些通常是警告,从您的代码中的错误,但它可能是故意的(例如,使用未初始化的变量和赖于它自动初始化为一个事实空字符串) E_STRICT - 运行时通知,允许PHP建议更改您的代码将确保最佳的互操作性,并转发代码的兼容性 E_CORE_ERROR - PHP初始启动期间发生的致命错误 E_CORE_WARNING - PHP期间发生的警告(非致命错误),初次启动 E_COMPILE_ERROR - 致命的编译时错误 E_COMPILE_WARNING - 编译时警告(非致命错误) E_USER_ERROR - 用户生成的错误消息 E_USER_WARNING - 用户生成的警告消息 E_USER_NOTICE - 用户生成的通知消息 E_DEPRECATED - 警告代码在将来的PHP版本中不起作用 E_USER_DEPRECATED - 用户生成的弃用警告
error_reporting最常见的几种组合设置:
E_ALL (显示所有错误,警告和通知,包括编码标准。) E_ALL & ~E_NOTICE (显示所有错误,通知除外) E_ALL & ~E_NOTICE & ~E_STRICT 显示所有错误,通知和编码标准警告除外。) E_COMPILE_ERROR|E_RECOVERABLE_ERROR|E_ERROR|E_CORE_ERROR (仅显示错误)
nginx+php 开启PHP错误日志
php-fpm.conf:如果没有请增加
[global]
error_log = log/php_fpm.log
[www]
catch_workers_output = yes
php.ini配置 如果没有请增加
error_reporting = E_ALL ;显示所有错误 display_errors = Off ;关闭错误提示 log_errors = On ;错误日志开启 log_errors_max_len = 1024 ;设置日志最大长度 error_log = /usr/local/error.log ;错误日志文件位置
重启php-fpm
systemctl restart php-fpm