三、PHP配置之Error handling logging

1、error_reporting integer

error_reporting = E_ALL

设置错误报告的级别。该参数可以是一个任意的表示二进制位字段的整数,或者常数名称。
错误级别和常数是在 预定义常量定义的,在 php.ini 之中也有专门的说明。
在程序运行时,还可以通过 error_reporting() 函数进行设置。请查看 display_errors 了解详情。

在PHP 4和PHP 5之中,其默认值为 E_ALL & ~E_NOTICE。 该设置表示除了 E_NOTICE 其他都显示的错误级别。在开发过程中很有必要显示它们。

2、display_errors string

display_errors = On

该选项设置是否将错误信息作为输出的一部分显示到屏幕,或者对用户隐藏而不显示。

设置 "stderr" 表示发送到 stderr 而不是 stdout。 "stderr"从 PHP 5.2.4 开始可用。在以前的版本中,该配置值的类型为 boolean.

Note:

这是一个辅助开发的功能,建议永远不要在生产系统中使用 (例如系统被连接到互联网对外提供服务)。

Note:

尽管 display_errors 也可以在运行时设置 (使用 ini_set()),
但是脚本出现致命错误时任何运行时的设置都是无效的。 因为在这种情况下预期运行的操作不会被执行

3、display_startup_errors boolean

即使 display_errors 设置为开启, PHP 启动过程中的错误信息也不会被显示。
强烈建议除了调试目的以外,将 display_startup_errors 设置为关闭。

4、log_errors boolean

设置是否将脚本运行的错误信息记录到服务器错误日志或者error_log之中。
注意,这是与服务器相关的特定配置项。

Note:

在生产系统中,强烈建议你使用错误日志记录web站点上显示的错误信息。

5、log_errors_max_len integer

设置 log_errors 的最大字节数. 在 error_log 会添加有关错误源的信息。
默认值为1024,如果设置为0表示不限长度。该长度设置对记录的错误,显示的错误,以及 $php_errormsg都会有限制作用。

当使用 integer 时, 其值以字节来衡量。还可以使用在FAQ中描述的速记符。

6、ignore_repeated_source boolean

ignore_repeated_source = Off
忽略重复消息时,也忽略消息的来源。
当该设置开启时,重复信息将不会记录它是由不同的文件还是不同的源代码行产生的。

7、report_memleaks boolean

如果这个参数设置为Off,则内存泄露信息不会显示 (在 stdout 或者日志中)。
This report will be send to stderr on Posix platforms.
On Windows, it will be send to the debugger using OutputDebugString(),
and can be viewed with tools like » DbgView。这只对调试编译有效,而且需要 error_reporting 包含了 E_WARNING 才会起作用

8、track_errors boolean

如果开启,最后的一个错误将永远存在于变量 $php_errormsg 中。
track_errors = Off

9、html_errors boolean

html_errors = On

在错误信息中关闭HTML标签。这种新的HTML格式的错误信息是可以点击,
它引导用户前往描述该错误或者导致该错误发生的函数的参考信息页面。 这些参考与 docref_root 和 docref_ext 的设置有关。

10、error_log string

error_log = /usr/local/log/php_errors.log
设置脚本错误将被记录到的文件。该文件必须是web服务器用户可写的。如果特殊值 syslog 被设置,
则将错误信息发送到系统日志记录器。在Unix以及类似系统上,
使用的是 syslog(3) ,而在 Windows NT 类系统上则为事件日志。
Windows 95上不支持系统日志记录。参见: syslog().
如果该配置没有设置,则错误信息会被发送到 SAPI 错误记录器。
例如,出现在Apache的错误日志中,或者在CLI中发送到 stderr。

PHP之错误的更多相关文章

  1. 航空概论(历年资料,引之百度文库,PS:未调格式,有点乱)

    航空航天尔雅 选择题1. 已经实现了<天方夜谭>中的飞毯设想.—— A——美国2. 地球到月球大约—— C 38 万公里3. 建立了航空史上第一条定期空中路线—— B——德国4. 对于孔明 ...

  2. 日期格式代码出现两次的错误 ORA-01810

    错误的原因是使用了两次MM . 一.Oracle中使用to_date()时格式化日期需要注意格式码 如:select to_date('2005-01-01 11:11:21','yyyy-MM-dd ...

  3. ASP.NET Core应用的错误处理[3]:ExceptionHandlerMiddleware中间件如何呈现“定制化错误页面”

    DeveloperExceptionPageMiddleware中间件利用呈现出来的错误页面实现抛出异常和当前请求的详细信息以辅助开发人员更好地进行纠错诊断工作,而ExceptionHandlerMi ...

  4. ASP.NET Core应用的错误处理[2]:DeveloperExceptionPageMiddleware中间件如何呈现“开发者异常页面”

    在<ASP.NET Core应用的错误处理[1]:三种呈现错误页面的方式>中,我们通过几个简单的实例演示了如何呈现一个错误页面,这些错误页面的呈现分别由三个对应的中间件来完成,接下来我们将 ...

  5. 实时的.NET程序错误监控产品Exceptionless

    Exceptionless可以对ASP.NET, Web API, WebForms, WPF, Console, 和 MVC 应用提供错误监控.上传.报表服务.使用时需要在Exceptionless ...

  6. 一个粗心的Bug,JSON格式不规范导致AJAX错误

    一.事件回放  今天工作时碰到了一个奇怪的问题,这个问题很早很早以前也碰到过,不过没想到过这么久了竟然又栽在这里. 当时正在联调一个项目,由于后端没有提供数据接口,于是我直接本地建立了一个 json ...

  7. SQL Server 致程序员(容易忽略的错误)

    标签:SQL SERVER/MSSQL/DBA/T-SQL好习惯/数据库/需要注意的地方/程序员/容易犯的错误/遇到的问题 概述 因为每天需要审核程序员发布的SQL语句,所以收集了一些程序员的一些常见 ...

  8. C# - 值类型、引用类型&走出误区,容易错误的说法

    1. 值类型与引用类型小总结 1)对于引用类型的表达式(如一个变量),它的值是一个引用,而非对象. 2)引用就像URL,是允许你访问真实信息的一小片数据. 3)对于值类型的表达式,它的值是实际的数据. ...

  9. 记一个mvn奇怪错误: Archive for required library: 'D:/mvn/repos/junit/junit/3.8.1/junit-3.8.1.jar' in project 'xxx' cannot be read or is not a valid ZIP file

    我的maven 项目有一个红色感叹号, 而且Problems 存在 errors : Description Resource Path Location Type Archive for requi ...

  10. 【WCF】错误协定声明

    在上一篇烂文中,老周给大伙伴们介绍了 IErrorHandler 接口的使用,今天,老周补充一个错误处理的知识点——错误协定. 错误协定与IErrorHandler接口不同,大伙伴们应该记得,上回我们 ...

随机推荐

  1. java中的synchronized同步代码块和同步方法的区别

    下面这两段代码有什么区别? //下列两个方法有什么区别 public synchronized void method1(){} public void method2(){ synchronized ...

  2. 不同局域网中同一IP地址的计算机怎么通信的

    1.IP地址在192.--.255之内的是私有地址,即192.168.1.56的电脑a是不能直接与192.168.1.56的电脑b进行通信的.他们需要用到NAT技术,即网络地址转换.2.NAT的作用是 ...

  3. 物联网架构成长之路(23)-Docker练习之Elasticsearch服务搭建

    0. 前言 最近基本都是学一些环境配置,和一些中间件的安装与配置.没有实际编写代码.可能看起来有点水,我对自己的学习方式是,先要了解各个中间件的安装配置以及简单使用,理论应用场景,然后我在小项目中,逐 ...

  4. HTML5学习笔记(二十八):跨域

    在跨域安全性方面,有多个地方会有限制,主要是XMLHttpRequest对象的跨域限制和iFrame的跨域限制,下面我们分别来看一下. Ajax跨域(CORS) CORS是一个W3C标准,全称是&qu ...

  5. Lua 5.1 5.3 参考手册

    Lua 5.1 参考手册: https://www.codingnow.com/2000/download/lua_manual.html Lua 5.3 参考手册: http://cloudwu.g ...

  6. 10个对Web开发者最有用的Python包

    Python最近成为了开发人员最喜欢的语言之一.无论你是专业的,业余的,还是一个初学者,你都可以从Python语言及其程序包中受益.Python已经被证明是当今最具活力的面向对象的编程语言之一.这就是 ...

  7. SQL 逗号分隔将一行拆成多行

    and number<=len(a.KOrderID) and type=)=',')

  8. qualcomm wifi kernel beacon loss 日志记录

    记录一下高通对于beacon loss的处理的日志.方便后面再来分析. 04:17:13.397139 [04:17:13.383909] [000000A81699E7EC] [VosMC] wla ...

  9. java主线程等待所有子线程执行完毕在执行(常见面试题)

    java主线程等待所有子线程执行完毕在执行(常见面试题) java主线程等待所有子线程执行完毕在执行,这个需求其实我们在工作中经常会用到,比如用户下单一个产品,后台会做一系列的处理,为了提高效率,每个 ...

  10. react 生命周期钩子里不要写逻辑,否则不生效

    react 生命周期钩子里不要写逻辑,否则不生效,要把逻辑写在函数里,然后在钩子里调用函数,否则会出现问题.