zoukankan      html  css  js  c++  java
  • php的错误级别

    deprecated   不赞成使用,可能有漏洞可能效率低,以后的版本不支持等

    notice  通知级别的错误

    warning    警告 这个需要看代码是不是哪里出了问题     以上三个程序仍然继续向下执行

    fatal error  致命错误  程序停止执行

    parse error 解析错误了  直接挂了  程序停止执行

    =================================

    E_USER 级别错误,用户自定义错误;好比,我触发trigger_error()一个E_USER_ERROR级别错误,它就相当于php本身的error错误

    顺便这里说下,找到php.ini的一个方法,打印出phpinfo();

    如图:

    程序里写  非php.ini

    php5默认级别是E_ALL & ~E_NOTICE 意思是,除了notice级别的错误,都显示。这在开发模式时是有必要的。

    error_reporting(0);  //不显示错误

    error_reporting(-1); // 显示所有错误

    显示出来:ini_set('display_errors','On');

    <?php
    
      function myhandler($errorno, $errorstr){
          switch ($errorno) {
              case E_USER_ERROR:
                  echo $errorno, ':  ',$errorstr, '<br/>';
                 die;// 如果是这个级别则结束掉
                  break;
              case E_USER_WARNING:
                  echo $errorno, ': ',$errorstr, '<br/>';
                  break;
              default:
                  # code...
                  break;
          }
    
        return true;
    
      }
    
      set_error_handler('myhandler');
    
     
      $a = '0';
      if (intval($a)<=0){
          trigger_error('warning level', E_USER_WARNING);
      }
      echo 'go on_1';   echo '<br/>';
    
      $b = 'hi';
      if(!is_numeric($b)){
         trigger_error('not a number', E_USER_ERROR);
      }
      echo 'go on_2';  echo '<br/>';

    这里可以看下手册中trigger_error()和set_error_handler()的用法。

    trigger_error()触发E_USER系列的错误。

    set_error_handler(),可以定义自己的错误。

    mixed  set_error_handler  ( callable  $error_handler  [, int $error_types  = E_ALL | E_STRICT  ] )

    $error_handler的参数   handler  ( int $errno  , string $errstr  [, string $errfile  [, int $errline  [, array $errcontext  ]]] )

    $errorno是错误级别,比如E_USER系列的...

  • 相关阅读:
    RUST实践.md
    redis.md
    opencvrust.md
    aws rds can't connect to mysql server on 'xx'
    Foundation ActionScript 3.0 With Flash CS3 And Flex
    Foundation Flash Applications for Mobile Devices
    Flash Mobile Developing Android and iOS Applications
    Flash Game Development by Example
    Actionscript 3.0 迁移指南
    在SWT中非UI线程控制界面
  • 原文地址:https://www.cnblogs.com/firstForEver/p/4940225.html
Copyright © 2011-2022 走看看