程序只要在运行,就免不了会出现错误,错误很常见,比如Error,Notice,Warning等等。之前我们介绍过《易犯的PHP小错误及相应分析》《为开发者准备的10款错误报告和追踪工具》,这篇文章具体说一下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("Database Connect Error")

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

方法三:在php脚本前加error_reporting(0),屏蔽所有错误提示。
其中,error_reporting 配置错误信息回报的等级。

语法:int error_reporting(int [level]);
返回值:整数
函数种类:PHP 系统功能

原文:http://www.ecomspark.com/what-are-the-different-types-of-errors-in-php/
译文:http://www.php100.com/html/dujia/2015/0121/8438.html
(翻译:PHP100_Zeroing)

PHP错误类型及屏蔽方法相关推荐

  1. php有哪些屏蔽错误的方法,php常见的错误类型及屏蔽方法

    1. 注意(Notices) 这些都是比较小而且不严重的错误,比如去访问一个未被定义的变量.通常,这类的错误是不提示给用户的,但有时这些错误会影响到运行的结果. 2. 警告(Warnings) 这就是 ...

  2. SSL证书报错类型及解决方法

    通过安装SSL证书可以确保网站数据传输的加密处理,是目前提升数据安全的重要手段之一.但这并意味着SSL证书安装完成后,网站就是绝对安全的.在网站安装SSL证书情况下,我们在访问网站时仍然会遇到各种各样 ...

  3. 关于elasticsearch boostrap checks failed错误类型整理及解决方法

    关于elasticsearch boostrap checks failed错误类型整理及解决方法 参考文章: (1)关于elasticsearch boostrap checks failed错误类 ...

  4. Oracle所有错误类型

    ORA-00001: 违反唯一约束条件 (.)  ORA-00017: 请求会话以设置跟踪事件  ORA-00018: 超出最大会话数  ORA-00019: 超出最大会话许可数  ORA-00020 ...

  5. ASP.NET常见错误,原因及解决方法(2003版)_不断更新.....

    [标题]             ASP.NET常见错误,原因及解决方法[错误提示]    异常详细信息: System.Net.WebException: 请求因 HTTP 状态 401 失败:Un ...

  6. 深入理解Java 8 Lambda(语言篇——lambda,方法引用,目标类型和默认方法)

    作者:Lucida 微博:@peng_gong 豆瓣:@figure9 原文链接:http://zh.lucida.me/blog/java-8-lambdas-insideout-language- ...

  7. java代码走查常见错误_FindBugs常见错误描述和解决方法

    (一)[DLS_DEAD_LOCAL_STORE] 描述: Dead store to 未使用的局部变量 解决方法:局部变量定义后未使用:实例化对象后又重新对该对象赋值 (二) [ST_WRITE_T ...

  8. 在Python中检查类型的规范方法是什么?

    检查给定对象是否为给定类型的最佳方法是什么? 如何检查对象是否从给定类型继承? 假设我有一个对象o . 如何检查是否为str ? #1楼 前往雨果: 您可能是说list而不是array ,但这指向类型 ...

  9. 错误类型:“系统找不到 Microsoft.Office.Interop.Word(转)

    错误类型:"系统找不到 Microsoft.Office.Interop.Word" 编译出现错误: "Could not load file or assembly ' ...

最新文章

  1. php mysql ajax日历记事本_php+mysql+jquery日历签到
  2. 纸质图书与电子图书的营销策略研究
  3. Golang协程goroutine和管道channel结合案例
  4. 设计模式之PHP项目应用——单例模式设计Memcache和Redis操作类
  5. 2、Saltstack的数据系统
  6. 两篇讲述Skinned Mesh原理的文章
  7. [转] 深入 CSS 行高
  8. 随手练—— 洛谷-P2945 Sand Castle(贪心)
  9. httpclient架构原理介绍 连接池详解
  10. 深度学习总概论(超神之路)
  11. 【牛腩新闻发布系统】开始
  12. ckeditor 3.6一直提示“例外被抛出且未被接住”的问题的解决方法
  13. [导入]WAP开发教程
  14. 51单片机波特率计算c语言,8051单片机波特率计算公式(配套C语言例程
  15. maven项目报error in opening zip file.
  16. 第二章、Tiny4412 U-BOOT移植二 启动分析【转】
  17. windows 10专业版 1709 使用curl命令
  18. 2023新年快乐,友盟+伴你岁岁年年
  19. 微信小程序 获取 手机验证码 短信验证码 后端功能实现解析
  20. 方正如何禁止从网络启动计算机,我来问问方正电脑怎么关网卡启动

热门文章

  1. 训练日志 2018.12.2
  2. 6 SD配置-企业结构-定义-定义装运点
  3. python创建空txt文件_python创建txt文件
  4. sql datetime字段 取年月日_写一手好SQL,你该从哪里入手?
  5. MATLAB实现BP神经网络预测汽油辛烷值
  6. java 比较器类_java常用类——比较器
  7. 双精度数举例_c语言中,常量,变量,浮点,单精度,双精度是什么意思?举例...
  8. unix入门经典_程序员大神们的经典编程语录
  9. Win10文件夹空白处右键列表添加命令提示符
  10. STM32那点事(2)_时钟树(上)