php设置错误级别-php教程

资源魔 32 0

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设置谬误级此外具体内容,更多请存眷资源魔其它相干文章!

标签: php 设置 php开发教程 php开发资料 php开发自学 错误级别

抱歉,评论功能暂时关闭!