Latest web development tutorials

PDOStatement::debugDumpParams

PHP PDO 參考手冊 PHP PDO參考手冊

PDOStatement::debugDumpParams — 打印一條SQL 預處理命令(PHP 5 >= 5.1.0, PECL pdo >= 0.9.0)


說明

語法

bool PDOStatement::debugDumpParams ( void )

直接打印出一條預處理語句包含的信息。 提供正在使用的SQL 查詢、所用參數(Params)的數目、參數的清單、參數名、用一個整數表示的參數類型(paramtype)、鍵名或位置、值、以及在查詢中的位置(如果當前POD驅動不支持,則為-1)。

此為一個用於調試的功能,在正常輸出的情況下直接輸出數據。

提示:和直接將結果輸出到瀏覽器一樣,可使用輸出控制函數來捕獲當前函數的輸出,然後(例如)保存到一個string中。

只打印此時此刻語句中的參數。 額外的參數不存儲在語句中,也就不會被輸出。


返回值

沒有返回值。


實例

PDOStatement::debugDumpParams() 使用命名參數的例子

<?php
/* 通过绑定 PHP 变量执行一条预处理语句 */
$calories = 150;
$colour = 'red';
$sth = $dbh->prepare('SELECT name, colour, calories
    FROM fruit
    WHERE calories < :calories AND colour = :colour');
$sth->bindParam(':calories', $calories, PDO::PARAM_INT);
$sth->bindValue(':colour', $colour, PDO::PARAM_STR, 12);
$sth->execute();

$sth->debugDumpParams();

?>

以上例程會輸出:

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

PDOStatement::debugDumpParams() 使用未命名參數的例子

<?php

/* 通过绑定 PHP 变量执行一条预处理语句 */
$calories = 150;
$colour = 'red';
$name = 'apple';

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

$sth->debugDumpParams();

?>

以上例程會輸出:

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

PHP PDO 參考手冊 PHP PDO參考手冊