抑制符無法隱藏致命錯誤的原因
在使用數(shù)據(jù)庫連接時,有時會輸錯登錄信息。開發(fā)者可能會使用 if 語句處理錯誤,并顯示自定義錯誤信息。然而,在這種情況下,即使使用了錯誤抑制符 @,系統(tǒng)仍然會報告致命錯誤。
這可能是由于以下原因:
從 php 8.0 開始,@ 抑制符不再抑制致命錯誤。這是因為致命錯誤會中斷腳本執(zhí)行,因此無法通過抑制符隱藏它們。
因此,為了正確處理錯誤,開發(fā)者應(yīng)該使用異常處理程序,而不是 @ 抑制符。異常處理程序可以在腳本執(zhí)行過程中捕獲錯誤,并允許開發(fā)者提供有意義的錯誤消息,而不會中斷腳本執(zhí)行。