百分百源码网-让建站变得如此简单! 登录 注册 签到领金币!

主页 | 如何升级VIP | TAG标签

当前位置: 主页>网站教程>网页制作> php设定差错级别
分享文章到:

php设定差错级别

发布时间:09/01 来源:未知 浏览: 关键词:

php错误级别设定

在php.ini中可以设定效劳器对错误的报警级别。在默许状况下,php将报告除了通知之外的所有错误。错误报告级别是通过一些预定义的常量来设定的,

语法:

int error_reporting ( [int level] )

假如参数 level 未指定,当前报错级别将被返回。下面几项是 level 大概的值:

错误级别.jpg

在php.ini文件中,默许的报告是除了通知之外的所有错误,如下语句设定:

error_reporting = E_ALL & ~ (E_NOTICE)

在上面的表达式中,符号"&"表示几个前提这间的并列,而"~"表示否认,即NOT的含义。假如想忽略警告信息,可以设定如下语句:

error_reporting = E_ALL & ~(E_NOTICE) & ~(E_WARNING)

在php.ini文件中,和错误有关的设定有如下几个:

(1)error_reporting,设定错误级别

(2)display_errors,可否显示错误报告,设定为ON则翻开,设定为OFF则关闭所有错误提醒

(3)log_errors,默许设定为OFF,可否记载错误日志;

(4)track_errors,默许设定为OFF,该选项可以帮忙解决代码中的错误,而不是让PHP供给其默许的功效。

PHP的错误报告
php.ini 文件中有很多配置设定。您应当已经设定好本人的php.ini文件并把它放在适宜的名目中,就像在Linux上安置PHP和Apache2的文档说明中所示的那样。在调试 PHP 利用程序时,应当知道两个配置变量。下面是这两个变量及其默许值:

display_errors = Off
error_reporting = E_ALL

通过在 php.ini 文件中搜索它们,可以发明这两个变量当前的默许值。display_errors 变量的目的很明显 —— 它告诉 PHP 可否显示错误。默许值是 Off。但是,要让开发历程愈加轻松,请把这个值设为 On:

display_errors = On

error_reporting变量的默许值是 E_ALL。这个设定会显示从不良编码实践到无害提醒到出错的所有信息。E_ALL 关于开发历程来说有点太细,由于它在屏幕上为一些小事(例如变量未初始化)也显示提醒,会搞糟阅读器的输出。我只想看到错误和不良编码实践,但是不想看到 无害的提醒。所以,请用以下值代替 error_reporting 的默许值:

error_reporting = E_ALL & ~E_NOTICE

从新启动 Apache,就全部设定好了。接下来,将学习怎样在 Apache 上做一样的事。

效劳器上的错误报告

依靠于 Apache 正在做的工作,在 PHP 中翻开错误报告大概没法工作,由于在运算机上大概有多个 PHP 版本。有时很难区分 Apache正在使用哪个 PHP 版本,由于 Apache 只能查看一个 php.ini 文件。不知道 Apache 正在使用哪个 php.ini 文件配置本人是一个平安问题。但是,有一种办法可以在 Apache 中配置 PHP 变量,从而包管设定了准确的出错级别。并且,最好知道怎样在效劳器端设定这些配置变量,以否决或抢占 php.ini 文件,从而供给更高级别的平安性。

在配置 Apache 时,应当已经接触过 <apache2-install-dir>/conf/httpd.conf 中 http.conf 文件中的根本配置。要做在 php.ini 文件中已经做过的事,请把以下各行增加到 httpd.conf,覆盖任何 php.ini 文件:

php_flag   display_errors         on
php_value error_reporting       2039

这会覆盖在 php.ini 文件中为 display_errors 已经设定的标记,乃至 error_reporting 的值。值 2039 代表 E_ALL & ~E_NOTICE。假如情愿采纳 E_ALL,请把值设为 2047。一样,还是要重新启动 Apache。

接下来,要在效劳器上测试错误报告。

关于error_reporting()这个函数,它是可以屏蔽到一些错误信息,但是PHP 中心造成的错误,是没法屏蔽的,由于PHP 中心造成的错误解直接致使PHP文件编译失败,由于书写格局没有依照PHP的编码规则写而造成的错误,是没法屏蔽的。

常见的如下:

// Turn off all error reporting;关闭所有的错误
error_reporting(0);
// Report simple running errors;报告一个简便的运转错误
error_reporting(E_ERROR | E_WARNING | E_PARSE);
// Reporting E_NOTICE can be good too (to report uninitialized
// variables or catch variable name misspellings …);包罗报告一些未初始化的变量或捕获变量名的拼写错误
error_reporting(E_ERROR | E_WARNING | E_PARSE | E_NOTICE);
// Report all errors except E_NOTICE
// This is the default value set in php.ini;报告所有的错误但不包罗E_NOTICE
error_reporting(E_ALL ^ E_NOTICE);
// Report all PHP errors (bitwise 63 may be used in PHP 3);报告所有的错误
error_reporting(E_ALL);
// Same as error_reporting(E_ALL);同上
ini_set(’error_reporting’, E_ALL);

引荐教程:PHP视频教程

以上就是php设定错误级别的具体内容,更多请关注百分百源码网其它相关文章!

打赏

打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

百分百源码网 建议打赏1~10元,土豪随意,感谢您的阅读!

共有151人阅读,期待你的评论!发表评论
昵称: 网址: 验证码: 点击我更换图片
最新评论

本文标签

广告赞助

能出一分力是一分吧!

订阅获得更多模板

本文标签

广告赞助

订阅获得更多模板