PDOStatement::debugDumpParams

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

PDOStatement::debugDumpParams Vuelca un comando preparado de SQL

Descripción

public PDOStatement::debugDumpParams ( void ) : 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 su nombre de clave o posición, su nombre, su posición en la consulta (si lo admite el controlador de PDO, si no, será -1), el tipo (param_type) como entero, y un valor booleano is_param.

Esta es una función de depuración que vuelca directamente los datos 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