PDO::prepare讲解


Posted in PHP onJanuary 29, 2019

PDO::prepare

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 相关文章推荐
图书管理程序(二)
Oct 09 PHP
PHP+APACHE实现用户论证的方法
Oct 09 PHP
Linux下ZendOptimizer的安装与配置方法
Apr 12 PHP
php循环输出数据库内容的代码
May 24 PHP
基于递归实现的php树形菜单代码
Nov 19 PHP
PHP实现全角字符转为半角方法汇总
Jul 09 PHP
php生成静态html页面的方法(2种方法)
Sep 14 PHP
PHP响应post请求上传文件的方法
Dec 17 PHP
PHP简单实现文本计数器的方法
Apr 28 PHP
php截取视频指定帧为图片
May 16 PHP
Zend Framework入门教程之Zend_Registry组件用法详解
Dec 09 PHP
laravel框架邮箱认证实现方法详解
Nov 22 PHP
PDO::lastInsertId讲解
Jan 29 #PHP
PHP date()格式MySQL中插入datetime方法
Jan 29 #PHP
PHP扩展mcrypt实现的AES加密功能示例
Jan 29 #PHP
Yii2.0建立公共方法简单示例
Jan 29 #PHP
使用vs code编辑调试php配置的方法
Jan 29 #PHP
Yii2.0实现的批量更新及批量插入功能示例
Jan 29 #PHP
详解关于php的xdebug配置(编辑器vscode)
Jan 29 #PHP
You might like
php中require和require_once的区别说明
2014/02/27 PHP
Yii入门教程之目录结构、入口文件及路由设置
2014/11/25 PHP
Laravel中使用自己编写类库的3种方法
2015/02/10 PHP
支持中文的PHP按字符串长度分割成数组代码
2015/05/17 PHP
php的debug相关函数用法示例
2016/07/11 PHP
Knockoutjs快速入门(经典)
2012/12/24 Javascript
jQuery实现用方向键控制层的上下左右移动
2013/01/13 Javascript
JQuery入门——用one()方法绑定事件处理函数(仅触发一次)
2013/02/05 Javascript
JS的Document属性和方法小结
2013/09/17 Javascript
jquery中animate动画积累的解决方法
2013/10/05 Javascript
jQuery获取Radio,CheckBox选择的Value值(示例代码)
2013/12/12 Javascript
jQuery提示插件alertify使用指南
2015/04/21 Javascript
使用jQuery UI库开发Web界面的简单入门指引
2016/04/22 Javascript
深入理解jquery自定义动画animate()
2016/05/24 Javascript
JavaScript中匿名函数的用法及优缺点详解
2016/06/01 Javascript
jquery二级目录选中当前页的css样式
2016/12/08 Javascript
原生js实现手风琴功能(支持横纵向调用)
2017/01/13 Javascript
微信小程序App生命周期详解
2018/01/31 Javascript
vue.js input框之间赋值方法
2018/08/24 Javascript
vue 子组件watch监听不到prop的解决
2020/08/09 Javascript
用Python程序抓取网页的HTML信息的一个小实例
2015/05/02 Python
编写Python脚本把sqlAlchemy对象转换成dict的教程
2015/05/29 Python
Python文档生成工具pydoc使用介绍
2015/06/02 Python
python检查字符串是否是正确ISBN的方法
2015/07/11 Python
Python正则表达式实现截取成对括号的方法
2017/01/06 Python
Python使用win32 COM实现Excel的写入与保存功能示例
2018/05/03 Python
Python ArgumentParse的subparser用法说明
2020/04/20 Python
Theflamel意大利:女士奢华服装、鞋子和配件
2020/01/11 全球购物
巴西备受欢迎的服装和生活方式品牌:FARM Rio
2020/02/04 全球购物
个人简历自我鉴定
2013/10/11 职场文书
人事助理自荐信
2014/02/02 职场文书
毕业生自荐信如何写
2014/03/24 职场文书
青年岗位能手事迹材料(2016推荐版)
2016/03/01 职场文书
关于Vue Router的10条高级技巧总结
2021/05/06 Vue.js
mysql 如何获取两个集合的交集/差集/并集
2021/06/08 MySQL
关于html选择框创建占位符的问题
2021/06/09 HTML / CSS