error_reporting()
用于设置 PHP 的报错级别并前往以后级别。(PHP 4, PHP 5)
函数可以正在运转时设置 error_reporting 指令。
PHP 有诸多谬误级别,应用该函数能够设置正在剧本运转时的级别。
假如不设置可选参数 level, error_reporting() 仅会前往以后的谬误陈诉级别。
参数level
新的 error_reporting 级别。 能够是一个位掩码也能够是一个已定名的常量。
倡议应用已定名的常量,以确保兼容未来的版本。 因为谬误级此外增加、整数取值范畴的添加,
较久的基于整数的谬误级别没有会老是以及预期的体现分歧。
level 可能的值(php中的报错级别)
常见:统共大略15个
15个正好对应二进制的15位。
需求留意的是, 上述表中的字段, 没有是原封不动的, 没有同的PHP版本, 值可能会没有同, 具体的请参考 php预约义常量
恣意数量的以上选项均可以用“或”来衔接(用 OR 或 |),这样能够陈诉一切需求的各级别谬误。
例如,上面的代码封闭了用户自界说的谬误以及正告,执行了某些操作,而后规复到原始的报错级别:
例:
<?php error_reporting(0); //禁用谬误陈诉 error_reporting(E_ERROR | E_WARNING | E_PARSE);//陈诉运转时谬误 error_reporting(E_ALL); //陈诉一切谬误 error_reporting(E_ALL ^ E_NOTICE); //除了E_NOTICE陈诉一切谬误,是正在php.ini的默许设置 error_reporting(-1); //陈诉一切 PHP 谬误 error_reporting(3); //没有报E_NOTICE error_reporting(11); //陈诉一切谬误 ini_set('error_reporting', E_ALL); // 以及 error_reporting(E_ALL); 同样 error_reporting(E_ERROR | E_WARNING | E_PARSE | E_NOTICE);//示意php谬误,正告,语法谬误,提示都返错。 ?>
换算关系:
E_All: 十进制为30719,换成二进制为 111011111111111
E_NOTICE:十进制为8,换成二进制为 1000
~E_NOTICE:对E_NOTICE进行取反操作, 变为0111
E_ALL & ~E_NOTICE::E_ALL以及 ~E_NOTICE进行与操作,变为111011111110111,化成十进制就是30711
能够看到E_ALL并非显示了一切的谬误,第12位为0, 这一名的权重为2的11次方, 为2048,其实就是E_STRICT的值,以是E_ALL是显示除了E_STRICT的一切谬误级别。
E_ALL & ~E_NOTICE 的二进制能够看出,从右至左,第4位以及第12位为0,第4位的权重为2的3次方,为8,就是E_NOTICE的值,以是是显示除了了E_STRICT以及E_NOTICE的一切谬误。
更多相干常识,请存眷 PHP中文网!!
以上就是php的报错级别有哪些?的具体内容,更多请存眷资源魔其它相干文章!
抱歉,评论功能暂时关闭!