PHP中最低等級的錯誤類型是“deprecated”,表示“不推薦,不建議”。這種錯誤一般是由於使用不建議的、過時的函數或語法造成的;其雖不影響PHP正常流程,但一般情況下建議修正。
本教學操作環境:windows7系統、PHP7.1版、DELL G3電腦
序言:php錯誤就是會讓腳本運作不正常的情況。
php的錯誤有很多種,包括warning、notice、deprecated、fetal error等。其中notice不叫通知,而叫通知等級的錯誤,warning也不叫警告,而叫警告等級的錯誤。
錯誤大致分為下面幾個型別。
deprecated是最低等級的錯誤,表示「不推薦,不建議」。例如PHP5所使用的ereg系列的正規比對函數就會報此類錯誤。這種錯誤一般是由於使用不建議的、過時的函數或語法所造成的。其雖不影響PHP正常流程,但一般情況下建議修正。
其次是notice。這種錯誤一般是語法中存在不當的地方。如使用變數但是未定義就會報此錯誤。最常見的是在陣列索引是字元時沒有加引號,PHP就視為常數,先找常數量表,找不到再視為變數。雖然PHP是腳本語言,語法要求不嚴,但仍建議對變數進行初始化。這種錯誤不影響PHP正常流程。
warning是等級比較高的錯誤,在語法中出現很不恰當的情況時才會報此錯誤,例如函數參數不符。這種層級的錯誤會導致無法獲得預期結果,需要修改程式碼。
更高等級的錯誤是fetal error。這是致命錯誤,直接導致PHP進程終結,後面的程式碼不再執行。這種問題非改不可
高階的錯誤是語法解析錯誤prase error。上述的錯誤都屬於PHP程式碼執行期間錯誤,而語法解析錯誤屬於語法檢查階段錯誤,這將導致PHP程式碼無法通過語法檢查。
這裡只是列舉了最常見的幾個,php手冊一共有16個等級的錯誤。
$date = date('Y-m-d');; if(ereg("([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})",$date,$regs)){ echo $regs[1]."-".$regs[2]."-".$regs[3]; }else{ echo "没有匹配到"; } //Deprecated(在php5版本),Fatal error(在php7版本) if($i > 2020){ echo '$i没有初始化!!!',PHP_EOL; } //Notice $arr = array('arr'=>1,2,3); echo $arr[arr]; //Warning $res = array_sum($arr,1); //Warning echo fun(); //Fatal error echo "最高级别错误'; //Parse error
上面的程式碼示範了php常見的幾個錯誤級別,如果沒有輸出完整的話,可以看看php.ini設定檔看看是否如下設定
error_reporting=E_ALL | E_STRICT display_errors=On
其中的error_reporting
是指定錯誤級別,display_errors
就不用說了。
推薦學習:《PHP影片教學》
以上是PHP中最低等級的錯誤類型是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!