downloads | documentation | faq | getting help | mailing lists | licenses | wiki | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

PDOStatement::errorCode> <PDOStatement::columnCount
[edit] Last updated: Fri, 25 May 2012

view this page in

PDOStatement::debugDumpParams

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

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

Description

bool 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



add a note add a note User Contributed Notes PDOStatement::debugDumpParams
mattspopcorn at gmail dot com 26-Aug-2009 02:03
It's not you, in PHP 5.2.6 and close versions this has an infinite loop bug.  Upgrade to the latest php where it has been fixed.

 
show source | credits | stats | sitemap | contact | advertising | mirror sites