Maison >base de données >tutoriel mysql >PDO peut-il être utilisé pour tester la validité de la connexion à la base de données ?
Test de connexion PDO
Requête :
Le PDO peut-il être utilisé pour tester des éléments valides et invalides connexions à la base de données ? Voici un extrait de code qui tente la connexion :
try{ $dbh = new pdo('mysql:host=127.0.0.1:3308;dbname=axpdb','admin','1234'); die(json_encode(array('outcome' => true))); }catch(PDOException $ex){ die(json_encode(array( 'outcome' => false, 'message' => 'Unable to connect' ))); }
Cependant, le script continue de tenter la connexion jusqu'à ce que le délai d'exécution (60 secondes) soit atteint, au lieu d'indiquer un échec de connexion.
Réponse :
Pour établir une connexion appropriée à la base de données avec PDO, vous devez spécifier le mode d'erreur lors de la connexion process :
try{ $dbh = new pdo( 'mysql:host=127.0.0.1:3308;dbname=axpdb', 'admin', '1234', array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION)); die(json_encode(array('outcome' => true))); } catch(PDOException $ex){ die(json_encode(array('outcome' => false, 'message' => 'Unable to connect'))); }
En définissant le mode d'erreur sur "exception" (PDO::ERRMODE_EXCEPTION), toute erreur de connexion sera générée comme exception. Cela vous permet d'intercepter ces exceptions et de les gérer avec élégance, en fournissant un message d'erreur plus informatif que la simple attente du délai d'attente.
Pour plus d'informations sur ces sujets, reportez-vous aux liens fournis :
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!