PHP第五天 錯誤機制

2021-09-23 10:45:48 字數 1760 閱讀 3727

錯誤處理

錯誤分類

語法錯誤:

程式不能執行,是在執行之前,檢查語法的時候,就發現語法出錯,結果是提示錯誤,不執行程式。

執行時錯誤:

語法檢查沒錯,然後開始執行,在執行**現了錯誤,然後報錯。

這是開發中最常見的錯誤。

邏輯錯誤:

程式能執行,且一直到結束沒有報錯,但執行得到的結果卻是錯的。

常見錯誤代號(重點)

含義:是指在程式執行時,發生的錯誤,系統會針對每種錯誤,給出相應的錯誤代號,並進行提示(報錯)。

另外,程式如果在執行之前檢查語法的時候就發現語法錯誤,也會報錯,也有乙個錯誤代號。

常見錯誤代號有:

e_notice:

提示性錯誤,輕微;

錯誤發生後,後面的程式繼續執行。

e_warning:

警告性錯誤,稍微嚴重;

錯誤發生後,後面的程式繼續執行。

e_error:

嚴重錯誤/致命錯誤;

錯誤發生後,後面的程式不再執行!

e_parse:

語法錯誤(語法解析錯誤);

語法解釋錯誤,是直接就不執行程式。

e_user_notice:

使用者自定義的提示錯誤

e_user_warning:

使用者自定義的警告錯誤

e_user_error:

使用者自定義的嚴重錯誤

e_all:

它是乙個代表「所有」錯誤的代號。

說明:1,這些錯誤代號,其實只是系統預先設定的一些常量,他們的值大約是:1, 2, 4, 8, 16.....

2,這些錯誤代號,通常只是用於對錯誤控制時進行「設定」使用。

3,他們是一系列的整數,並具有一定的規律:1,2,4,8,16,32,64, 。。。。

4,可以在php.ini中使用(設定)他們,如下所示:

錯誤觸發

就是發生了乙個錯誤的意思——即觸發了錯誤。

有兩種情形會觸發錯誤:

1,程式本身有錯,則執行時就會觸發錯誤(並提示)。

2,程式本身沒錯,但出現不符合預計的情形(比如資料不符合要求)。

此時程式設計師可以主動觸發乙個錯誤,也可以說是由程式設計師「主動建立乙個錯誤」

——這就是「使用者錯誤」,包括:

e_user_notice:

e_user_warning:

e_user_error:

如何觸發「使用者錯誤」呢?

自定義錯誤觸發語法:

trigger_error(「自定義錯誤提示內容」,  自定義錯誤的代號);

案例演示:

輸入乙個年齡(簡化為變數值),如果年齡超過60或小於0,就觸發乙個notice錯誤!

php基礎第五天

今天說的是由關字串的一些相關的內建函式 分隔字串用explode 以什麼進行分隔 str 最後得到的是分隔後的陣列 字串的合併 implode 以什麼進行連線合併 arr 是將陣列進行合併成字串 比較兩個字串的大小 strcmp str1,str2 區分大小寫字母 替換字串 str replace ...

國慶第五天

直接在寢室待了乙個上午 一 matlab 試了一下昨天安裝的matlab2010b發現檔案都打不開,報這個錯 undefined function or method uiopen for input arguments of type char 二 c 1.找到了個之前 裡的乙個問題 把本週開頭和...

集訓第五天

今天學習了乙個快速指數冪取餘的演算法。就拿一道題來說明 description 上初中的時候我們就學會了冪乘運算,可是我們卻不知道對於高階的冪乘,出結果的方法比較慢,那麼你有什麼更好的方法嗎?input 第1行,乙個整數n 1 n 1000 表示要計算的資料組數 第2 n 1行,每行兩個整數,第1個...