錯誤型別:
1.語法錯誤
2.環境錯誤
3.邏輯錯誤(比較難排查),比如本來是用==,變成用賦值 = // 用單元測試
php 錯誤級別
1. deprecated 最低級別錯誤
2. notice 通知級別錯誤
header('content-type:text/html;charset=utf-8');
echo
$king;
echo
'程式繼續執行';
'程式繼續執行';
3. warning 警告級別錯誤
settype($var,'int');
var_dump($var);
echo
'程式繼續執行';
'程式繼續執行';
4. fatal error 級別錯誤
echo md6('king');
echo
'程式繼續執行';
5. parse error 錯誤
最高端別的錯誤,其他有錯還看不到。
echo
'aaaa'
echo md6('king');
echo
'程式繼續執行';
6. e_user_相關的錯誤
與使用者丟擲的錯誤有關。
7. php 配置檔案中與錯誤相關的選項錯誤模組:
設定錯誤級別:
1.通過配置檔案設定:
儲存後重啟伺服器。
2.通過動態函式設定
echo error_reporting();//當前錯誤級別常量,32767
echo
'';//顯示所有錯誤
error_reporting(e_all);//32767
//error_reporting(e_all&~e_notice)
echo error_reporting(e_all);
//error_reporting(0);//相當於關閉錯誤提示,但遮蔽不了解析錯誤
error_reporting(-1);//顯示所有錯誤
echo
$king;
echo
'程式繼續執行';
3.通過執行時設定配置選項的值
ini_set('error_reporting',0);//代表不顯示我們的錯誤
ini_set('error_reporting',-1);//代表顯示所有錯誤
ini_set('display_errors',0);//關閉顯示
echo
$king;
echo
'程式繼續執行';
是否顯示錯誤:內嵌到指令碼中,部署到線上要關閉
error_reporting(-1);//顯示所有錯誤
@settype($var,'king');
//@遮蔽錯誤
8. trigger_error(『錯誤資訊』,』錯誤級別』)觸發錯誤
類似於die();
$num1 = 1;
$num2 = '2a';
if(!(is_numeric($num1) && is_numeric($num2)))
else
echo
'程式繼續執行';
PHP錯誤與異常處理
和其他程式語言遇到錯誤就丟擲異常不一樣,php在處理物件時它也有異常機制,但是php會盡可能的愉快的去執行而無視發生的事情,除非遇到乙個極端嚴重錯誤才會丟擲異常。本文概述php相關的錯誤異常處理機制。錯誤等級 php 有幾個錯誤嚴重性等級。三個最常見的的資訊型別是錯誤 error 通知 notice...
php 不丟擲異常 php錯誤與異常處理
php與其他計算機程式語言在遇到錯誤就丟擲異常不太一樣,php在處理物件時它也有異常機制,但是php會盡可能的愉快的去執行而無視發生的事情,除非遇到乙個極端嚴重錯誤才會丟擲異常。本文主要給大家分享php相關的錯誤異常處理機制。錯誤等級 php 有幾個錯誤嚴重性等級。三個最常見的的資訊型別是錯誤 er...
PHP 錯誤與異常處理 一
異常與錯誤 以上是php中錯誤和異常的乙個概念,php中任何自身的錯誤或者是非正常的 都會當做錯誤對待,並不會以異常的形式丟擲,但是也有一些情況會當做異常和錯誤同時丟擲。也就是說,你想在資料庫連線失敗的時候自動捕獲異常是行不通的,因為這就不是異常,是錯誤。要做錯誤處理,必須得明細錯誤級別 fatal...