Maison >développement back-end >tutoriel php >## Comment inspecter la requête réelle exécutée par PDO en PHP ?
Comment inspecter la requête paramétrée en PHP avec PDO
Lors de l'utilisation de PDO pour l'accès à une base de données en PHP, l'utilisation de requêtes paramétrées améliore la sécurité en protégeant contre l'injection SQL. Cependant, il peut être difficile de vérifier la requête réelle exécutée par la base de données, car la requête avec les jetons et les paramètres est transmise séparément.
Récupération directe impossible
Comme Ben James explique qu'il n'existe pas de méthode directe pour obtenir la requête SQL complète côté PHP. En effet, la base de données reçoit la requête avec les jetons et les paramètres de manière indépendante et la requête réelle est assemblée dans la base de données. L'émulation du processus de remplacement côté PHP est également irréalisable en raison des variations dans les techniques de gestion des jetons et de liaison.
La journalisation comme solution de contournement
Pour inspecter la requête réelle exécutée sur la base de données, une solution de contournement consiste à enregistrer toutes les requêtes SQL. Dans MySQL, cela peut être réalisé en modifiant le fichier my.cnf (ou my.ini dans les environnements Windows) et en ajoutant une ligne comme :
log=[REPLACE_BY_PATH]/[REPLACE_BY_FILE_NAME]
Cependant, cela ne doit être utilisé qu'à des fins de débogage et non dans environnements de production pour éviter la dégradation des performances.
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!