PDOStatement
PHP Manual

PDOStatement::debugDumpParams

(PHP 5 >= 5.1.0, PECL pdo >= 0.9.0)

PDOStatement::debugDumpParams Détaille une commande préparée SQL

Description

public void PDOStatement::debugDumpParams ( void )

Détaille les informations contenues dans une commande préparée, directement sur la sortie standard. Les informations sont notamment la requête SQL utilisée, le nombre de paramètres utilisés (Params), la liste des paramètres, avec leur nom, type (paramtype) sous forme d'entier, le nom de clé ou leur position dans la requête, la valeur associée, et la position dans la requête (Si cette dernière information n'est pas supportée par le pilote PDO, c'est toujours -1).

Ceci est une fonction de déboguage, qui affiche directement des informations sur la sortie standard.

Astuce

Comme pour toutes les fonctions qui affichent directement des résultats au navigateur, vous pouvez utiliser les fonctions de gestion des sorties pour capturer le contenu de cette fonction et le sauver, par exemple, dans une chaîne.

Les paramètres affichés sont ceux qui ont été ajoutés dans la requête jusqu'au moment de l'appel. Les paramètres surnuméraires sont ignorés.

Valeurs de retour

Aucune valeur n'est retournée.

Exemples

Exemple #1 Exemple avec PDOStatement::debugDumpParams() et des paramètres nommés

<?php
/* exécution d'une commande préparée avec liaison avec variables PHP */
$calories 150;
$colour 'red';
$sth $dbh->prepare('SELECT name, colour, calories
    FROM fruit
    WHERE calories < :calories AND colour = :colour'
);
$sth->bindParam(':calories'$caloriesPDO::PARAM_INT);
$sth->bindValue(':colour'$colourPDO::PARAM_STR12);
$sth->execute();

$sth->debugDumpParams();

?>

L'exemple ci-dessus va afficher :

SQL: [96] SELECT name, colour, calories
    FROM fruit
    WHERE calories < :calories AND colour = :colour
Params:  2
Key: Name: [9] :calories
paramno=-1
name=[9] ":calories"
is_param=1
param_type=1
Key: Name: [7] :colour
paramno=-1
name=[7] ":colour"
is_param=1
param_type=2

Exemple #2 Exemple avec PDOStatement::debugDumpParams() et des paramètres anonymes

<?php

/* exécution d'une commande préparée avec liaison avec variables PHP */
$calories 150;
$colour 'red';
$name 'apple';

$sth $dbh->prepare('SELECT name, colour, calories
    FROM fruit
    WHERE calories < ? AND colour = ?'
);
$sth->bindParam(1$caloriesPDO::PARAM_INT);
$sth->bindValue(2$colourPDO::PARAM_STR);
$sth->execute();

$sth->debugDumpParams();

?>

L'exemple ci-dessus va afficher :

SQL: [82] SELECT name, colour, calories
    FROM fruit
    WHERE calories < ? AND colour = ?
Params:  2
Key: Position #0:
paramno=0
name=[0] ""
is_param=1
param_type=1
Key: Position #1:
paramno=1
name=[0] ""
is_param=1
param_type=2

Voir aussi


PDOStatement
PHP Manual