2010-12-05 133 views
4

我正在使用PHP中的PDO。PDO:錯誤處理

現在我想知道是否可以捕捉到任何全局錯誤並顯示。

隨着全球我的意思是,如果任何$sql=$connect->prepare()失敗,則呼應了

"Something went wrong:" . the_error

或者你需要經常做invidually每個$ SQL?

+0

您可以擴展PDO以實現您所期望的行爲。 – mpen 2015-03-24 21:15:44

回答

2

您可以隨時捕獲PDO類拋出的異常。

try 
{ 
    ...new PDO('odbc:SAMPLE', 'db2inst1',... 
} 
catch(PDOException $exception) 
{ 
    echo "Failed: " . $exception->getMessage(); 
} 
+0

我不認爲PDO對象會在所有錯誤情況下引發異常。至少它不是像下面的代碼那樣(不提供參數):`$ sql =「SELECT * FROM`user` where'username` =:username AND`password` =:password」; $ statement = $ pdo-> prepare($ sql); $ statement-> execute();` – ehsun7b 2012-06-05 06:53:40