PDOStatement::bindValue
(PHP 5 >= 5.1.0, PHP 7, PECL pdo >= 1.0.0)
PDOStatement::bindValue — 把一个值绑定到一个参数
说明
PDOStatement::bindValue
( mixed
$parameter
, mixed $value
[, int $data_type
= PDO::PARAM_STR
] ) : bool绑定一个值到用作预处理的 SQL 语句中的对应命名占位符或问号占位符。
参数
-
parameter
-
参数标识符。对于使用命名占位符的预处理语句,应是类似 :name 形式的参数名。对于使用问号占位符的预处理语句,应是以1开始索引的参数位置。
-
value
-
绑定到参数的值
-
data_type
-
使用 PDO::PARAM_* 常量明确地指定参数的类型。
返回值
成功时返回 TRUE
, 或者在失败时返回 FALSE
。
范例
Example #1 执行一条使用命名占位符的预处理语句
<?php
/* 通过绑定的 PHP 变量执行一条预处理语句 */
$calories = 150;
$colour = 'red';
$sth = $dbh->prepare('SELECT name, colour, calories
FROM fruit
WHERE calories < :calories AND colour = :colour');
$sth->bindValue(':calories', $calories, PDO::PARAM_INT);
$sth->bindValue(':colour', $colour, PDO::PARAM_STR);
$sth->execute();
?>
Example #2 执行一条使用问号占位符的预处理语句
<?php
/* 通过绑定的 PHP 变量执行一条预处理语句 */
$calories = 150;
$colour = 'red';
$sth = $dbh->prepare('SELECT name, colour, calories
FROM fruit
WHERE calories < ? AND colour = ?');
$sth->bindValue(1, $calories, PDO::PARAM_INT);
$sth->bindValue(2, $colour, PDO::PARAM_STR);
$sth->execute();
?>
参见
- PDO::prepare() - 准备要执行的语句,并返回语句对象
- PDOStatement::execute() - 执行一条预处理语句
- PDOStatement::bindParam() - 绑定一个参数到指定的变量名