zoukankan      html  css  js  c++  java
  • 如何关闭php的所有错误提示

    error_reporting 设定错误讯息回报的等级
    2047我记得应该是E_ALL。

     php.ini 文件中有许多配置设置。您应当已经设置好自己的php.ini 文件并把它放在合适的目录中,就像在 Linux 上安装PHP和 Apache 2 的文档说明中所示的那样(请参阅 参考资料)。在调试PHP应用程序时,应当知道两个配置变量。下面是这两个变量及其默认值:
    display_errors = Off
    error_reporting = E_ALL

    E_ALL能从不良编码实践到无害提示到出错的所有信息。E_ALL 对于开发过程来说有点太细,因为它在屏幕上为一些小事(例如变量未初始化)也显示提示,会搞糟浏览器的输出
    所以不建议使用2047,最好把默认值改为:error_reporting = E_ALL & ~E_NOTICE

    PHP .ini中display_errors = Off失效的解决
    问题: 
       PHP 设置文件php .ini中明明已经设置display_errors = Off,但是在运行过程中,网页上还是会出现错误信息。
    解决:
       经查log_errors= On,据官方的说法,当这个log_errors设置为On,那么必须指定error_log文件,如果没指定或者指定的文件没有权限写入,那么照样会输 出到正常的输出渠道,那么也就使得display_errors 这个指定的Off失效,错误信息还是打印了出来。于是将log_errors = Off,问题就解决了。

    经常见到error_reporting(7)直意为:设定错误讯息回报的等级。

       value   constant     
      1   E_ERROR       
      2   E_WARNING       
      4   E_PARSE       
      8   E_NOTICE       
      16   E_CORE_ERROR       
      32   E_CORE_WARNING       
      64   E_COMPILE_ERROR       
      128   E_COMPILE_WARNING       
      256   E_USER_ERROR       
      512   E_USER_WARNING       
      1024   E_USER_NOTICE       
      2047   E_ALL       
      2048   E_STRICT       
     然而7=1+2+4
    就是出错时显示1 E_ERROR    2 E_WARNING      4 E_PARSE
    <?php
    //禁用错误报告
    error_reporting(0);
    //报告运行时错误
    error_reporting(E_ERROR | E_WARNING | E_PARSE);
    //报告所有错误
    error_reporting(E_ALL);
    ?>

    另附

    问: 
    可否关闭PHP的错误提示?我不希望让别人看到我程序的报错。

    答: 
    由于PHP.ini中的设置是全局性的,我们不能为您单独某个用户直接修改全局配置信息,但您可以通过error_reporting这个php函数来调整您所运行的脚本的错误信息输出,例如:

    error_reporting(E_ALL^E_NOTICE^E_WARNING);

    可以关闭所有notice 和 warning 级别的错误。

    把这个语句放在您脚本的功用包含文件中,通常为config.php 或者conn.php 中就可以控制输出了。

  • 相关阅读:
    c++链表实现学生成绩管理系统(简易版)
    IOS动画讲解
    栈的实现
    Masonry的使用
    二叉树详解-2
    二叉树详解-1
    CoreData的使用-2
    NSPredicate 详解
    CoreData的使用-1
    IOS常用手势用法
  • 原文地址:https://www.cnblogs.com/sniper007/p/2343908.html
Copyright © 2011-2022 走看看