[TOC]
* * * * *
### 一. 错误类型
1. 语法错误
2. 环境错误
3. 逻辑错误
### 二. 错误
|选项 | 描述 |
| --- | --- |
| E_ERROR | 致命的运行时错误,终止程序执行 |
| E_WARNING | 运行时警告 |
| E_PARSE | 语法解析错误 |
| E_NOTICE | 通知(注意),表示可能表现为错误的情况 |
| E_CORE_ERROR | 在PHP初始化启动过程中发生的致命错误 |
| E_CORE_WARNING | PHP初始化启动过程中发生的警告 |
| E_COMPILE_ERROR | 致命编译错误 |
| E_COMPILE_WARNING | 编译时警告 |
| ... | ... |
### 三. 错误级别
* Deprecated 最低级别的错误(表示 : 不推荐)(比如mysql的相关函数)
* Notice 通知级别的错误
* Warning 警告级别的错误
* Fatal error 致命级别错误
* Parse error 语法解析错误, 最高级别
* E_USER_ 相关的错误
### 三. 设置错误级别
~~~
# php.ini 中设置 error_reporting 来显示错误级别
# 显示所有错误
error_reporting = E_ALL
~~~
~~~
# php.ini 中设置 display_errors 来 显示/关闭 错误输出
# 显示
display_errors = On
~~~
~~~
# 代码中通过 error_reporting() 函数动态设置 显示错误的级别
# 显示所有错误
error_reporting(E_ALL);
# 不显示Notice错误
error_reporting(E_ALL&~E_NOTICE);
# 不显示错误
error_reporting(0);
# 显示错误
error_reporting(-1);
~~~
~~~
# ini_set(); 运行时设置配置选项的值
ini_set('error_reporting, 0);
ini_set('error_reporting, -1);
ini_set('display_errors, 'Off'); // 关闭
~~~