PDOStatement::debugDumpParams
Справочное руководство по PHP PDO
PDOStatement::debugDumpParams — Вывод подготовленной SQL-команды (PHP 5 >= 5.1.0, PECL pdo >= 0.9.0)
Описание
Синтаксис
bool PDOStatement::debugDumpParams ( void )
Непосредственно выводит информацию, содержащуюся в подготовленном выражении. Предоставляет используемый SQL-запрос, количество используемых параметров (Params), список параметров, имя параметра, тип параметра (paramtype), выраженный целым числом, имя ключа или позицию, значение и позицию в запросе (или -1, если это не поддерживается текущим драйвером PDO).
Это функция отладки, которая выводит данные непосредственно в обычный вывод.Совет:Так же, как и при непосредственном выводе результата в браузер, вы можете использовать функции управления выводом, чтобы перехватить вывод этой функции, а затем (например) сохранить его в строку.
Выводятся только параметры, находящиеся в выражении на текущий момент. Дополнительные параметры не сохраняются в выражении и поэтому не будут выведены.
Возвращаемые значения
Нет возвращаемого значения.
Примеры
Пример 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
Другие расширения