Extraction d'erreurs PDO : un guide complet
PDO, la puissante classe PHP, offre une interaction efficace avec la base de données. Cependant, extraire les informations d’erreur de PDO peut parfois s’avérer difficile. Examinons le problème et sa solution.
Le problème :
Malgré la définition de ATTR_ERRMODE sur ERRMODE_WARNING, PDO reste silencieux lorsqu'une requête non valide (@$%T$! !!) est préparé. Ni les instructions print_r() ni errorInfo() ne fournissent de retour.
La solution :
setAttribute définit le comportement d'erreur lors de l'exécution de la requête, pas lors de la préparation. Pour les instructions préparées émulées, la préparation n'implique pas de communication avec le serveur, les erreurs ne sont donc détectées qu'après l'exécution. Cependant, le pilote MySQL prend en charge les instructions préparées natives, ce qui devrait déclencher des erreurs lors de la préparation.
Pour garantir la gestion des erreurs, utilisez le code suivant :
$dbh->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION );
L'utilisation d'ERRMODE_EXCEPTION force PDO à lever une exception. pour les requêtes invalides. Cette exception contiendra le message d'erreur dont vous avez besoin.
Remarques supplémentaires :
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!