php之错误级别设置

error_reporting

error_reporting(0);将禁止显所有错误

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

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

  • 在PHP 5之中,提供了一个新的错误级别 E_STRICT。 因为 E_STRICT 并不包含在 E_ALL 之中,你必须明确启用才能显示这个类别的错误信息。在开发阶段启用 E_STRICT 会有一些好处。严格的信息将帮助你使用最新和最好的建议的方法来编写代码,例如它会警告你使用了将被废弃的函数。

  • 在 PHP 以外使用PHP的常量是没有意义的,例如在httpd.conf之中, 你需要使用常量对应的integer 值来取代。因为随着时间的推移和PHP的发展,会有更多的错误级别将被添加,因此错误级别的最大值(为 E_ALL)可能会改变 。因此在使用 E_ALL 对应整数值的地方,应该考虑使用较大的数值来涵盖当前和将来需要使用的二进制位字段,例如数值 2147483647 (将包含所有错误,而不仅仅是 E_ALL).

常量和数值对应关系:

function FriendlyErrorType($type)
    {
        switch($type)
            {
            case E_ERROR: // 1 //
                return 'E_ERROR';
            case E_WARNING: // 2 //
                return 'E_WARNING';
            case E_PARSE: // 4 //
                return 'E_PARSE';
            case E_NOTICE: // 8 //
                return 'E_NOTICE';
            case E_CORE_ERROR: // 16 //
                return 'E_CORE_ERROR';
            case E_CORE_WARNING: // 32 //
                return 'E_CORE_WARNING';
            case E_CORE_ERROR: // 64 //
                return 'E_COMPILE_ERROR';
            case E_CORE_WARNING: // 128 //
                return 'E_COMPILE_WARNING';
            case E_USER_ERROR: // 256 //
                return 'E_USER_ERROR';
            case E_USER_WARNING: // 512 //
                return 'E_USER_WARNING';
            case E_USER_NOTICE: // 1024 //
                return 'E_USER_NOTICE';
            case E_STRICT: // 2048 //
                return 'E_STRICT';
            case E_RECOVERABLE_ERROR: // 4096 //
                return 'E_RECOVERABLE_ERROR';
            case E_DEPRECATED: // 8192 //
                return 'E_DEPRECATED';
            case E_USER_DEPRECATED: // 16384 //
                return 'E_USER_DEPRECATED';
            }
        return $type;
    }

转载于:https://my.oschina.net/ozil/blog/92854

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值