PDOStatement::debugDumpParams
PDOStatement::debugDumpParams — 打印一條 SQL 預(yù)處理命令(PHP 5 >= 5.1.0, PECL pdo >= 0.9.0)
說明
語法
bool PDOStatement::debugDumpParams ( void )
直接打印出一條預(yù)處理語句包含的信息。提供正在使用的 SQL 查詢、所用參數(shù)(Params)的數(shù)目、參數(shù)的清單、參數(shù)名、用一個整數(shù)表示的參數(shù)類型(paramtype)、鍵名或位置、值、以及在查詢中的位置(如果當(dāng)前 POD 驅(qū)動不支持,則為-1)。
此為一個用于調(diào)試的功能,在正常輸出的情況下直接輸出數(shù)據(jù)。提示: 和直接將結(jié)果輸出到瀏覽器一樣,可使用輸出控制函數(shù)來捕獲當(dāng)前函數(shù)的輸出,然后(例如)保存到一個 string 中。
只打印此時此刻語句中的參數(shù)。額外的參數(shù)不存儲在語句中,也就不會被輸出。
返回值
沒有返回值。
實(shí)例
PDOStatement::debugDumpParams() 使用命名參數(shù)的例子
<?php /* 通過綁定 PHP 變量執(zhí)行一條預(yù)處理語句 */ $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() 使用未命名參數(shù)的例子
<?php /* 通過綁定 PHP 變量執(zhí)行一條預(yù)處理語句 */ $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
更多建議: