PHP 8.0 中 @ 抑止符失效,如何處理致命錯誤?

PHP 8.0 中 @ 抑止符失效,如何處理致命錯誤?

隱匿錯誤信息無效?

你在使用 if 語句來連接數據庫,并在輸入錯誤登錄信息時希望看到 if 語句中的錯誤信息。然而,系統卻報告了一個致命錯誤,讓你懷疑配置文件的問題或其他未知因素。

原因解惑:

php 8.0 版本開始,@ 抑止符不再有效抑制致命級別的錯誤。這意味著一旦發生致命錯誤,即使使用 @ 也無法阻止其顯示。

立即學習PHP免費學習筆記(深入)”;

解決辦法:

為了僅在錯誤發生時顯示 if 語句中的錯誤信息,你需要使用 try-catch 語句。該語句允許你捕獲特定類型的異常(例如數據庫連接錯誤),并提供自定義錯誤處理邏輯。例如:

try {     // 數據庫連接代碼 } catch (PDOException $e) {     echo $e->getMessage(); // 顯示自定義錯誤信息 }

? 版權聲明
THE END
喜歡就支持一下吧
點贊5 分享