PHP错位类型及屏蔽方式

首先,PHP主要有以下3种错误类型

1.注意(Notices)

  这些都是比较小而且不严重的错误,比如去访问一个未定义的变量。通常,这类错位是不会提示个用户的,但有时这些会影响到运行的结果。

2.警告(Warnings)

  这是稍微严重一些的错误,比如想用include()包含一个本身不存在的文件,这样的错误信息会提示给用户,但不会导致程序终止运行。

3.致命错误(Fatal errors)

  这些就是严重的错误,比如你想要初始化一个根本不存在的类的对象,或调用一个不存的函数,这类错误会导致程序停止运行,php也会把这些错误展现给用户。

其次,有以下不同的错误种类

E_ERROR:通常会显示出来,也会终端程序执行

E_WARNING:通常都会显示出来,但不会中断程序的执行。
E_NOTICE:在脚本正常运行下发生的代码错误。
E_PARSE:语法解析错误。

E_CORE_ERROR:在PHP启动时发生的致命错误。
E_CORE_WARNING:报告在PHP启动时发生的非致命性错误。
E_COMPILE_ERROR:编译时发生的致命错误,指出脚本的错误。

E_USER_ERROR:用户产生的错误信息。
E_USER_WARNING:用户产生的警告信息。
E_USER_NOTICE:用户引发的注意消息。

E_STRICT:编码标准化警告,运行时发生的错误。
E_RECOVERABLE_ERROR:接近致命的运行时错误,若未被捕获则视同E_ERROR。
E_ALL:捕获所有的错误和警告。

最后是屏蔽PHP错误提示

一、在有可能出错的函数前加@,然后or die("")

  如:@mysql_connect(..) or die("XXXX")

二、编辑php.ini,查找"display_errors =",将“=”后面的值改为“off”.

三、在php脚本前加error_reporting(0),屏蔽所有错误提示

  其中,error_reporting配置错误信息回报的等级。

原文地址:https://www.cnblogs.com/YTzZ/p/5301084.html