簡體   English   中英

Laravel和多個數據庫連接

[英]Laravel and multiple database connections

這可能是一個愚蠢的問題。 我有兩個分別與Laravel 4一起使用的數據庫。其中一個只能使用特定IP(出於安全原因)訪問,而另一個則可以訪問。 我有兩個不同的mysql連接。 我已經看到使用此數據庫連接測試:

if(DB::connection('mysql')->getDatabaseName()){ }

為了測試可以看到和不能看到的東西,我嘗試給mysql一個錯誤的密碼。 我收到一個很好的丑陋錯誤,發現它無法連接。 如果無法訪問數據庫,是否有辦法使其忽略該數據庫? 只有一個PHP類在頁面加載時調用僅安全數據庫,但是上述檢查似乎無效。

通過laravel的核心代碼,當數據庫連接失敗時,不會引發任何特定的異常。

因此,解決方案是:

try {
    //Strings always evaluate to boolean true
    $dbConnected = (bool)DB::connection('mysql')->getDatabaseName();
}
catch (Exception $e)
{
    $dbConnected = false;
}

然后根據變量$dbConnected處理您的代碼。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM