欢迎访问服务器技术网-www.fuwuqijishu.com

PDO::prepare

PHP fuwuqijishu 2年前 (2022-09-04) 68次浏览 0个评论 扫描二维码
文章目录[隐藏]

PDO::prepare

PHP PDO 参考手册

PDO::prepare — 准备要执行的SQL语句并返回一个 PDOStatement 对象(PHP 5 >= 5.1.0, PECL pdo >= 0.1.0)


说明

语法

public PDOStatement PDO::prepare ( string $statement [, array $driver_options = array() ] )

为 PDOStatement::execute() 方法准备要执行的SQL语句,SQL语句可以包含零个或多个命名(:name)或问号(?)参数标记,参数在SQL执行时会被替换。

你不能在 SQL 语句中同时包含命名(:name)或问号(?)参数标记,只能选择其中一种风格。

预处理 SQL 语句中的参数在使用PDOStatement::execute()方法时会传递真实的参数。


参数

statement
合法的SQL语句。

driver_options
此数组包含一个或多个 key=>value 对来设置 PDOStatement 对象的属性,
最常使用到是将PDO::ATTR_CURSOR值设置为PDO::CURSOR_SCROLL来请求一个可滚动游标。


返回值

如果成功,PDO::prepare()返回PDOStatement对象,如果失败返回 FALSE 或抛出异常 PDOException 。


实例

使用命名(:name)参数来准备SQL语句

实例

<?php
/* 通过数组值向预处理语句传递值 */
$sql = SELECT name, colour, calories
FROM fruit
WHERE calories < :calories AND colour = :colour
;
$sth = $dbh->prepare($sql, array(PDO::ATTR_CURSOR => PDO::CURSOR_FWDONLY));
$sth->execute(array(:calories => 150, :colour => red));
$red = $sth->fetchAll();
$sth->execute(array(:calories => 175, :colour => yellow));
$yellow = $sth->fetchAll();
?>

使用问号(?)参数来准备SQL语句

实例

<?php
/* 通过数组值向预处理语句传递值 */
$sth = $dbh->prepare(SELECT name, colour, calories
FROM fruit
WHERE calories < ? AND colour = ?
);
$sth->execute(array(150, red));
$red = $sth->fetchAll();
$sth->execute(array(175, yellow));
$yellow = $sth->fetchAll();
?>

PHP PDO 参考手册

喜欢 (0)
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

Warning: error_log(/www/wwwroot/fuwiqijishu/wp-content/plugins/spider-analyser/#log/log-2123.txt): failed to open stream: No such file or directory in /www/wwwroot/fuwiqijishu/wp-content/plugins/spider-analyser/spider.class.php on line 2900