2013-12-11 44 views

回答

29

您可以使用

它會給你的數據庫名稱爲連接的數據庫,所以你可以用它來檢查,如果您的應用程序連接到它。

但是...... Laravel只會在數據庫需要連接數據庫時連接到數據庫,並且在連接嘗試的時候,如果發現任何錯誤,它將引發一個PDOException,所以這是您可以做的重定向您的用戶轉到友好頁面:

App::error(function(PDOException $exception) 
{ 
    Log::error("Error connecting to database: ".$exception->getMessage()); 

    return "Error connecting to database"; 
}); 

將此項添加到您的app/filters.php文件中。

在我看來,你並不需要檢查它是否是connceted,只要在異常處理閉包中採取適當的行動。

+1

謝謝!這工作。 –

+0

這對於亞馬遜運行狀況檢查非常有用,它結合嘗試使您的網站在數據庫關閉時可用(即在許多地方使用緩存內容)。 –

0

工作:) -

剛剛將該代碼應用程序/ filters.php

App::error(function(PDOException $exception) 
{ 
    Log::error("Error connecting to database: ".$exception->getMessage()); 

    return "Error connecting to database"; 
}); 
5

您可以使用下面的代碼:

try{ 
    DB::connection()->getDatabaseName(); 
}catch(Exception $e){ 
    echo $e->getMessage(); 
} 
相關問題