首頁  >  文章  >  後端開發  >  nortonpartitionmagic PHP函數之error_reportingE_ALL ^ E_NOTICE詳細說明

nortonpartitionmagic PHP函數之error_reportingE_ALL ^ E_NOTICE詳細說明

WBOY
WBOY原創
2016-07-29 08:45:541008瀏覽

舉例說明:
在Windows環境下:原本在php4.3.0中運行正常的程序,在4.3.1中為何多處報錯,大體提示為:Notice:Undefined varialbe:變數名稱.
例如有如下的程式碼:

複製程式碼 程式碼如下:


if (!$tmp_i) {
$tmp_i=10;
}


4.3.0運作正常,4.3.1運作會提示Notice:Undefined varialbe:tmp_i
問題下:
1.問題出在哪裡?
2.應如何修改這段程式碼?
3.不改段程式碼,如何修改php.ini中的設定使原來在4.3.0中的程式在4.3.1的環境下運作正常?而不出現這個錯誤提示.
解決辦法:
程式開頭加一句:
error_reporting(E_ALL & ~E_NOTICE); 或error_reporting(E_ALL ^ E_NOTICE);

修改php.ini
error_reporting = EmALL & ~E_NOTICE >有關error_reporting()函數:
error_reporting() 設定PHP 的報錯等級並傳回目前等級。
; 錯誤報告是位元的。或將數字加起來得到想要的錯誤報告等級。
; E_ALL - 所有的錯誤和警告
; E_ERROR - 致命性運行時錯
; E_WARNING - 運行時警告(非致命性錯)
; E_PARSE - 編譯時解析錯誤
; E_NOTICE - 運行時提醒(這些經常是你的程式碼的bug引起的,
;也可能是有意的行為造成的。(如:基於未初始化的變數自動初始化為一個
                     串的事實而使用一個未初始化的變數)
; E_CORE_ERROR - 發生於PHP啟動時初始化過程中的致命錯誤
; E_CORE_WARNING - 發生於PHP啟動時初始化過程中的警告(非致命性錯)
; E_COMPILE_ERROR - 編譯時致命性錯
; E_COMPILE_WARNING - 編譯時警告(非致命性錯)
; E_USER_ERROR - 使用者產生的錯誤訊息
; E_USER_WING - 使用者產生的警告訊息; E_USER_NOTICE - 使用者產生的提醒訊息
使用方法:
error_reporting(0);//停用錯誤回報
error_reporting(E_ALL ^ E_NOTICE);//顯示除去E_NOTICE 之外的所有錯誤訊息
error_reporting(E_ALL^E_WARNING^E_NOTICE);//顯示除去E_WARNING E_NOTICE 之外的所有錯誤訊息
error_reporting(E_ERROR | E_WARNING | E_PARSE);//顯示運行時錯誤,與 DALL_reporting_PICEd ^fICE_PICE_PICE);//顯示運行時錯誤,與.>效果相同。
以上就介紹了nortonpartitionmagic PHP函數之error_reportingE_ALL ^ E_NOTICE詳細說明,包括了nortonpartitionmagic方面的內容,希望對PHP教程有興趣的朋友有所幫助。

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn