web-dev-qa-db-fra.com

Comment vérifier si connecté à la base de données en Laravel 4?

Comment puis-je vérifier si laravel est connecté à la base de données? J'ai cherché autour et je ne trouve rien qui puisse me dire comment cela se passe.

18
Andrew M

Vous pouvez utiliser 

if(DB::connection()->getDatabaseName())
{
   echo "Connected sucessfully to database ".DB::connection()->getDatabaseName().".";
}

Il vous donnera le nom de la base de données connectée afin que vous puissiez l'utiliser pour vérifier si votre application est connectée à celle-ci.

Mais ... Laravel ne se connectera à la base de données que s’il a besoin de quelque chose de la base de données et, au moment de la connexion, essayez, s'il détecte une erreur, il lève un PDOException. votre utilisateur sur une page conviviale:

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

    return "Error connecting to database";
});

Ajoutez ceci à votre fichier app/filters.php.

À mon avis, vous n'avez pas vraiment besoin de vérifier si elle est connectée ou pas, mais prenez les mesures appropriées dans la fermeture du traitement des exceptions.

31

Vous pouvez utiliser le code suivant:

try{
   DB::connection()->getDatabaseName();
}catch(Exception $e){
   echo $e->getMessage();
}
5
ahm_selim

travail :) - 

Vient d'ajouter ce code à app/filters.php

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

    return "Error connecting to database";
});
0
broadcastip