PHP显示详细错误信息,怎么让PHP显示错误信息如何将PHP错误信息详细地展示出来

2019-09-03
0评论
/
4049阅读
爱搜啊

使用PHP Apache编程,在缺省设置下,PHP编码错误是不会提示的,这对于开发来说,是很不方便的。可以使用以下步骤打开出错提示

在有的服务器上,PHP代码执行出错时,浏览器只会显示500错误,这样不利于程序员定位错误代码。

怎么让PHP显示错误信息如何将PHP错误信息详细地展示出来

开启PHP错误信息显示有2个设置:

1:error_reporting = 错误报告级别(如果是开发模式,请设置为:E_ALL)

2:display_errors = On

这2个设置缺一不可。display_errors=Off时,无论error_reporting设置为何种级别,都不会显示任何错误信息。

设置方法:

1:修改php目录下的etc/php.ini文件

2:php代码中添加:

error_reporting(E_ALL);

ini_set('display_errors','On');

Apache下PHP编码错误显示错误信息

使用PHP Apache编程,在缺省设置下,PHP编码错误是不会提示的,这对于开发来说,是很不方便的。可以使用以下步骤打开出错提示

1. 打开php.ini文件。

以我的ubuntu为例,这个文件在: /etc/php5/Apache2 目录下。

2. 搜索并修改下行,把Off值改成On

display_errors = Off

3. 搜索下行

error_reporting = E_ALL & ~E_NOTICE

或者搜索:

error_reporting = E_ALL & ~E_DEPRECATED

修改为

error_reporting = E_ALL | E_STRICT

4. 修改Apache的 httpd.conf

以我的 Ubuntu 为例, 这个文件在:/etc/apache2/ 目录下,这是一个空白文件。

添加以下两行:

php_flag display_errors on

php_value error_reporting 2039

5. 重启Apache,就OK了。

error_reporting错误级别代码

值 常量 描述
1 E_ERROR 致命的运行错误。错误无法恢复,暂停执行脚本。
2 E_WARNING 运行时警告(非致命性错误)。非致命的运行错误,脚本执行不会停止。
4 E_PARSE 编译时解析错误。解析错误只由分析器产生。
8 E_NOTICE 运行时提醒(这些经常是你代码中的bug引起的,也可能是有意的行为造成的。)
16 E_CORE_ERROR PHP启动时初始化过程中的致命错误。
32 E_CORE_WARNING PHP启动时初始化过程中的警告(非致命性错)。
64 E_COMPILE_ERROR 编译时致命性错。这就像由Zend脚本引擎生成了一个E_ERROR。
128 E_COMPILE_WARNING 编译时警告(非致命性错)。这就像由Zend脚本引擎生成了一个E_WARNING警告。
256 E_USER_ERROR 用户自定义的错误消息。这就像由使用PHP函数trigger_error(程序员设置E_ERROR)
512 E_USER_WARNING 用户自定义的警告消息。这就像由使用PHP函数trigger_error(程序员设定的一个E_WARNING警告)
1024 E_USER_NOTICE 用户自定义的提醒消息。这就像一个由使用PHP函数trigger_error(程序员一个E_NOTICE集)
2048 E_STRICT 编码标准化警告。允许PHP建议如何修改代码以确保最佳的互操作性向前兼容性。
4096 E_RECOVERABLE_ERROR 开捕致命错误。这就像一个E_ERROR,但可以通过用户定义的处理捕获(又见set_error_handler())
8191 E_ALL 所有的错误和警告(不包括 E_STRICT) (E_STRICT will be part of E_ALL as of PHP 6.0)


本站附件分享,如果附件失效,可以去找找看

诚通网盘附件百度网盘附件


标签: Nginx Apache iis php
于2019-09-03发布