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