首頁 >後端開發 >php教程 >為什麼我的 PDO 錯誤訊息為空?

為什麼我的 PDO 錯誤訊息為空?

Susan Sarandon
Susan Sarandon原創
2024-12-18 19:55:12778瀏覽

Why Are My PDO Error Messages Empty?

從 PDO 中提取錯誤訊息

嘗試從 PDO 異常中獲取錯誤訊息時,遇到空結果可能會令人沮喪。這個問題深入研究了根本問題,並提供了該問題的解決方案。

儘管將錯誤模式設為警告,但 PDO 語句及其錯誤訊息會傳回空數組。這個問題源於這樣一個事實:setAttribute 在查詢執行期間影響 PDO 的行為,而不是在語句準備期間。

在模擬準備好的語句的情況下,prepare() 函數不會與資料庫伺服器交互,導致不錯誤檢查。但是,當使用本機準備好的語句時,正如 MySQL 自 4.1 版本以來所支援的那樣,將錯誤模式設為異常應該在查詢執行時觸發異常。

要實現此目的,請使用以下程式碼:

$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

透過切換到本機準備好的語句並正確設定錯誤模式,您現在應該能夠從PDO 異常中獲取訊息豐富的錯誤訊息。

以上是為什麼我的 PDO 錯誤訊息為空?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn