基本資料
E_NOTICE 表示一般情形不記錄,只有程式有錯誤情形時才用到,例如企圖存取一個不存在的變數,或是呼叫 stat() 函數檢視不存在的檔案。
E_WARNING 通常都會顯示出來,但不會中斷程式的執行。這對除錯很有效。例如:用有問題的Regex呼叫 ereg()。
E_ERROR 通常會顯示出來,亦會中斷程式執行。意即用這個遮罩無法追查到記憶體配置或其它的錯誤。
E_PARSE 從文法中解析錯誤。
E_CORE_ERROR 類似 E_ERROR,但不包括 PHP 核心造成的錯誤。
E_CORE_WARNING 類似 E_WARNING,但不包括 PHP 核心錯誤警告。
例子:
error_reporting = E_ALL & ~E_NOTICE ; 顯示所有的錯誤,除了提醒
error_reporting = E_COMPILE_ERROR|E_ERROR|E_CORE_ERROR ; 僅顯示錯
error_reporting=E_ERROR :只會報告致命性錯誤
基本上設定
error_reporting = E_ALL & ~E_NOTICE ; 顯示所有的錯誤,除了提醒
例子
代碼如下 |
複製代碼 |
error_reporting(0); // Report simple running errors error_reporting(E_ERROR | E_WARNING | E_PARSE); // Reporting E_NOTICE can be good too (to report uninitialized // variables or catch variable name misspellings ...) error_reporting(E_ERROR | E_WARNING | E_PARSE | E_NOTICE); // Report all errors except E_NOTICE // This is the default value set in php.ini error_reporting(E_ALL ^ E_NOTICE); // Report all PHP errors (bitwise 63 may be used in PHP 3) error_reporting(E_ALL); // Same as error_reporting(E_ALL); ini_set('error_reporting', E_ALL);
|
整數。表示舊的PHP的錯誤層級。(Returns the old error_reporting level.)
手冊上的例子:
Value |
Constant |
Description |
Note |
1 |
E_ERROR (integer) |
Fatal run-time errors. These indicate errors that can not be recovered from, such as a memory allocation problem. Execution of the script is halted. |
|
2 |
E_WARNING (integer) |
Run-time warnings (non-fatal errors). Execution of the script is not halted. |
|
4 |
E_PARSE (integer) |
Compile-time parse errors. Parse errors should only be generated by the parser. |
|
8 |
E_NOTICE (integer) |
Run-time notices. Indicate that the script encountered something that could indicate an error, but could also happen in the normal course of running a script. |
|
16 |
E_CORE_ERROR (integer) |
Fatal errors that occur during PHP’s initial startup. This is like an E_ERROR, except it is generated by the core of PHP. |
since PHP 4 |
32 |
E_CORE_WARNING (integer) |
Warnings (non-fatal errors) that occur during PHP’s initial startup. This is like an E_WARNING, except it is generated by the core of PHP. |
since PHP 4 |
64 |
E_COMPILE_ERROR (integer) |
Fatal compile-time errors. This is like an E_ERROR, except it is generated by the Zend Scripting Engine. |
since PHP 4 |
128 |
E_COMPILE_WARNING (integer) |
Compile-time warnings (non-fatal errors). This is like an E_WARNING, except it is generated by the Zend Scripting Engine. |
since PHP 4 |
256 |
E_USER_ERROR (integer) |
User-generated error message. This is like an E_ERROR, except it is generated in PHP code by using the PHP function trigger_error(). |
since PHP 4 |
512 |
E_USER_WARNING (integer) |
User-generated warning message. This is like an E_WARNING, except it is generated in PHP code by using the PHP function trigger_error(). |
since PHP 4 |
1024 |
E_USER_NOTICE (integer) |
User-generated notice message. This is like an E_NOTICE, except it is generated in PHP code by using the PHP function trigger_error(). |
since PHP 4 |
2048 |
E_STRICT (integer) |
Run-time notices. Enable to have PHP suggest changes to your code which will ensure the best interoperability and forward compatibility of your code. |
since PHP 5 |
4096 |
E_RECOVERABLE_ERROR (integer) |
Catchable fatal error. It indicates that a probably dangerous error occured, but did not leave the Engine in an unstable state. If the error is not caught by a user defined handle (see also set_error_handler()), the application aborts as it was an E_ERROR. |
since PHP 5.2.0 |
8191 |
E_ALL (integer) |
All errors and warnings, as supported, except of level E_STRICT in PHP < 6. |
6143 in PHP 5.2.x and 2047 previously |