美文网首页
php错误处理之错误报告级别

php错误处理之错误报告级别

作者: 圆咚咚CodingLife | 来源:发表于2019-02-16 13:10 被阅读5次

    阅读原文

    最常见的错误分为三种:

    错误类型 内容说明
    E_ERROE 错误,执行直接中断
    E_WARNING 警告,问题比较严重。但是还会继续向下运行
    E_NOTICE 提示,有些小问题不会影响到程序,常发生在项目未定义
    E_PARSE 编译时语法解析错误,解析错误仅仅由分析器产生
    E_ALL 所有的错误
    E_STRICT 启用PHP对代码的修改建议,以确保代码具有最佳的互操作性和向前兼容性
    E_DEPRECATED 启用后将会对未来版本中可能无法工作的代码给出警告

    在下面的几种类型中:

    error最严重,必须要解决,不然程序无法继续向下执行

    warning也很严重,也必须要解决,如果明确的,故意的可以不用处理。

    notice你可以不用管,但是有些公司,项目标准特别高,在高标准要求的项目中也必须要解决。因为,notice会影响到PHP的执行效率,通常发生在函数未定义等。

    parse错误,是指语法写错了,必须要解决。

    error_reporting报告错误类型

    error_reporting是指错误报告。在php.ini中也有这样一个参数。这个参数决定了PHP引擎记录、报告、显示哪些错误类型。

    一、在php.inierror_reporting参数。若error_reporting参数设置为0,整个PHP引擎错误钧不会显示,输出,记录。

    如果我们想显示所有错误可以写上:

    error_reporting = E_ALL

    如果我们想显示所有错误但排除提示,可以将这个参数写为:

    error_reporting = E_ALL & ~E_NOTICE

    显示所有错误,但排除提示、兼容性和未来兼容性,可写为:

    error_reporting = E_ALL & ~E_NOTICE & ~E_STRICT & ~E_DEPRECATED

    二、有些情况下我们无权限操作php.ini文件,又想要控制error_reporting怎么办?

    在运行的xxxx.php文件开始处,可以使用error_reporting()函数达到目标。

    <?php
        //关闭所有的错误提示
        error_reporting(0);
    ?>
    
    

    [扩展]

    @符是我们之前学习过的单行不显示错误,请不用或者少用@符,效率较低。

    相关文章

      网友评论

          本文标题:php错误处理之错误报告级别

          本文链接:https://www.haomeiwen.com/subject/rlvbeqtx.html