if (DB::connection()) {
//
}
,但是這會產生錯誤:
[PDOException]
SQLSTATE[HY000] [1045] Access denied for user 'homestead'@'localhost' (using password: YES)
我想從代碼來測試,如果一切都很好用連接,但沒有出現錯誤, 我要尋找的解決方案,而不嘗試捕捉.. ...
if (DB::connection()) {
//
}
,但是這會產生錯誤:
[PDOException]
SQLSTATE[HY000] [1045] Access denied for user 'homestead'@'localhost' (using password: YES)
我想從代碼來測試,如果一切都很好用連接,但沒有出現錯誤, 我要尋找的解決方案,而不嘗試捕捉.. ...
由於@Luke指出的那樣,你的最好的可能的選項之一是使用try和catch。
try{
Schema::hasTable('mytable');
// or \DB::statement('show Databases');
}catch(\PDOException $e){
//This means there is definitely error connecting to database
//I don't understand why you don't want to catch me :(
}
你可以使用上面的代碼中的助手函數或特徵或任何理智的選擇。 其他可能性使用shell_exec()
或system()
等
您可以在try catch語句中使用此代碼,以便您可以捕獲該異常,然後輸出更好的消息或重定向到其他位置。
參考:
http://php.net/manual/en/language.exceptions.php http://www.w3schools.com/php/php_exception.asp
這也不是例外,我想測試連接是否正常,就像我可以測試表是否存在一樣: Schema :: hasTable('some_table') – fico7489
這意味着用於登錄到MySQL服務器的用戶名和密碼組合不正確。檢查'.env'文件中的用戶名和密碼值。 –
我知道用戶名和密碼是錯誤的,我需要代碼來測試用戶名和密碼是否錯誤或不... – fico7489
爲什麼不試試/ catct?這是一個很好的場景使用它 – Borjante