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

search for in the

PDOStatement::errorCode> <PDOStatement::columnCount
[edit] Last updated: Fri, 24 May 2013

view this page in

PDOStatement::debugDumpParams

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

PDOStatement::debugDumpParams Vuelca un comando preparado de SQL

Descripción

bool PDOStatement::debugDumpParams ( void )

Vuelca la información contenida en una sentencia preparada directamente en la salida. Proporcionará la consulta SQL en uso, el número de parámetros usados (Params), la lista de parámetros con sus nombres, su tipo (paramtype) como un entero, sus nombres de clave o posición, el valor, y la posición en la consulta (si lo admite el controlador de PDO, si no, será -1).

Esta es una función de depuración, que vuelca directamente los dotos en la salida habitual.

Sugerencia

Como con todo lo que genera un resultado directamente en el navegador, se pueden utilizar las funciones de control de salida para capturar el resultado de esta función y guardarlo, por ejemplo, en un string.

Solamente volcará los parámetros de la sentencia en el momento del vuelco. Los parámetros extra no son almacenados en la sentencia, y tampoco son mostrados.

Valores devueltos

No devuelve ningún valor.

Ejemplos

Ejemplo #1 Ejemplo de PDOStatement::debugDumpParams() con parámetros con nombre

<?php
/* Ejecutar una sentencia preparada vinculando variables de PHP */
$calorías 150;
$color 'red';
$gsent $gbd->prepare('SELECT name, colour, calories
    FROM fruit
    WHERE calories < :calories AND colour = :colour'
);
$gsent->bindParam(':calories'$caloríasPDO::PARAM_INT);
$gsent->bindValue(':colour'$colorPDO::PARAM_STR12);
$gsent->execute();

$gsent->debugDumpParams();

?>

El resultado del ejemplo sería:

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

Ejemplo #2 Ejemplo de PDOStatement::debugDumpParams() con parámetros sin nombre

<?php

/* Ejecutar una sentencia preparada vinculando variables de PHP */
$calorías 150;
$color 'red';
$name 'apple';

$gsent $gbd->prepare('SELECT name, colour, calories
    FROM fruit
    WHERE calories < ? AND colour = ?'
);
$gsent->bindParam(1$caloríasPDO::PARAM_INT);
$gsent->bindValue(2$colorPDO::PARAM_STR);
$gsent->execute();

$gsent->debugDumpParams();

?>

El resultado del ejemplo sería:

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

Ver también



add a note add a note User Contributed Notes PDOStatement::debugDumpParams - [2 notes]
up
1
thefox
1 month ago
This function doesn't print parameter values despite the documentation says it does. See https://bugs.php.net/bug.php?id=52384 (filed back in 2010).
up
1
mattspopcorn at gmail dot com
3 years ago
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 | sitemap | contact | advertising | mirror sites