Как проверить, подключен ли laravel к базе данных? Я искал вокруг, и я не могу найти ничего, что могло бы сказать мне, как это делается.
Как проверить, подключен ли к базе данных в Laravel 4?
Ответ 1
Вы можете использовать
if(DB::connection()->getDatabaseName())
{
echo "Connected sucessfully to database ".DB::connection()->getDatabaseName().".";
}
Он предоставит вам имя базы данных для подключенной базы данных, чтобы вы могли использовать его, чтобы проверить, подключено ли ваше приложение к нему.
Но... Laravel будет подключаться только к базе данных, когда ему что-то понадобится из базы данных, и во время попытки подключения, если он найдет какие-либо ошибки, он поднимет PDOException
, так что это то, что вы можете сделать для перенаправить пользователя на дружественную страницу:
App::error(function(PDOException $exception)
{
Log::error("Error connecting to database: ".$exception->getMessage());
return "Error connecting to database";
});
Добавьте это в свой app/filters.php
файл.
По моему мнению, вам действительно не нужно проверять, подключено ли оно или нет, просто выполните правильное действие при закрытии обработки исключений.
Ответ 2
Вы можете использовать следующий код:
try{
DB::connection()->getDatabaseName();
}catch(Exception $e){
echo $e->getMessage();
}
Ответ 3
рабочий:) -
Просто добавьте этот код в app/filters.php
App::error(function(PDOException $exception)
{
Log::error("Error connecting to database: ".$exception->getMessage());
return "Error connecting to database";
});