这篇文章给大家介绍PHP中PDOStatement::debugDumpParams的作用是什么,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。
PDOStatement::debugDumpParams
PDOStatement::debugDumpParams — 打印一条 SQL 预处理命令(PHP 5 >= 5.1.0, PECL pdo >= 0.9.0)
说明
语法
boolPDOStatement::debugDumpParams(void)
直接打印出一条预处理语句包含的信息。提供正在使用的 SQL 查询、所用参数(Params)的数目、参数的清单、参数名、用一个整数表示的参数类型(paramtype)、键名或位置、值、以及在查询中的位置(如果当前 POD 驱动不支持,则为-1)。
此为一个用于调试的功能,在正常输出的情况下直接输出数据。
提示:和直接将结果输出到浏览器一样,可使用输出控制函数来捕获当前函数的输出,然后(例如)保存到一个string中。
只打印此时此刻语句中的参数。额外的参数不存储在语句中,也就不会被输出。
返回值
没有返回值。
实例
PDOStatement::debugDumpParams()使用命名参数的例子
<?php
/*通过绑定PHP变量执行一条预处理语句*/
$calories=150;
$colour='red';
$sth=$dbh->prepare('SELECTname,colour,calories
FROMfruit
WHEREcalories<:caloriesANDcolour=: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 = :colourParams: 2Key: Name: [9] :caloriesparamno=-1name=[9] ":calories"is_param=1param_type=1Key: Name: [7] :colourparamno=-1name=[7] ":colour"is_param=1param_type=2
PDOStatement::debugDumpParams()
使用未命名参数的例子
<?php
/*通过绑定PHP变量执行一条预处理语句*/
$calories=150;
$colour='red';
$name='apple';
$sth=$dbh->prepare('SELECTname,colour,calories
FROMfruit
WHEREcalories<?ANDcolour=?');
$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: 2Key: Position #0:paramno=0name=[0] ""is_param=1param_type=1Key: Position #1:paramno=1name=[0] ""is_param=1param_type=2
关于PHP中PDOStatement::debugDumpParams的作用是什么就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。