最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
PHP线上错误日志控制(error_reporting和display_errors)
时间:2022-06-24 17:35:24 编辑:袖梨 来源:一聚教程网
我们知道产品的生产环境肯定是不给予显示错误的,于是:
php.ini中将 display_errors = Off 改为display_errors = On
或者 ini_set('display_errors',0);
其次,我们知道php的错误级别是由error_reporting【error_reporting详细教程】控制的,但是有很多人在生产环境关闭了错误信息提示
error_reporting(0);
其实这种做法,我觉得不科学,在codeigniter框架就是这样
代码如下 | 复制代码 |
if (defined('ENVIRONMENT')) |
线上的错误信息肯定是要记录的,error_reporting(0)这样会导致所有的错误信息不会记录,应该:error_reporting = E_ALL & ~E_NOTICE,只要display_errors = Off,错误信息就不会再页面上显示,因为display_errors的优先级别更高。
特别要注意的是:
如果php.ini中log_errors= On,据官方的说法,那么必须指定error_log文件,如果没指定或者指定的文件没有权限写入,那么照样会输出到正常的输出渠道,那么也就使得display_errors 这个指定的Off失效,错误信息还是打印了出来。将log_errors = Off就行了。
总结下,在生产环境中不现实错误信息还能记录错误日志:
代码如下 | 复制代码 |
/** * 记录生产环境错误日志 * * @link http://www.111com.net */ error_reporting(E_ALL); ini_set('display_errors',0); ini_set('log_errors',1); ini_set('error_log','E:'.date('Y-m-d').'_phpddt.com.txt'); |
相关文章
- 《无限暖暖》织衣蛛获得方法 12-26
- 《无限暖暖》美食家蜜蜂获得方法 12-26
- 《无限暖暖》泳镜蝽获得方法 12-26
- 《无限暖暖》芭蕾豆娘获得方法 12-26
- 《无限暖暖》刺绣蛾获得方法 12-26
- 《无限暖暖》尖帽仙获得方法 12-26