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 相关文章推荐
PHP的面向对象编程
Oct 09 PHP
PHP 引用文件技巧
Mar 02 PHP
PHP+Mysql+jQuery实现动态展示信息
Oct 08 PHP
php中使用array_filter()函数过滤空数组的实现代码
Aug 19 PHP
thinkphp获取栏目和文章当前位置的方法
Oct 29 PHP
thinkphp四种url访问方式详解
Nov 28 PHP
PHP正则表达式过滤html标签属性(DEMO)
May 04 PHP
php解决DOM乱码的方法示例代码
Nov 20 PHP
php求数组全排列,元素所有组合的方法总结
Mar 14 PHP
php实现用户登陆简单实例
Apr 04 PHP
PHP的RSA加密解密方法以及开发接口使用
Feb 11 PHP
PHP程序员学习使用Swoole的理由
Jun 24 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 setTime 设置当前时间的代码
2012/08/27 PHP
PHP+HTML+JavaScript+Css实现简单爬虫开发
2016/03/28 PHP
php中类和对象:静态属性、静态方法
2017/04/09 PHP
thinkphp5.1 文件引入路径问题及注意事项
2018/06/13 PHP
Yii框架连表查询操作示例
2019/09/06 PHP
[Web]防止用户复制页面内容和另存页面的方法
2009/02/06 Javascript
javascript小数四舍五入多种方法实现
2012/12/23 Javascript
jQuery.prototype.init选择器构造函数源码思路分析
2013/02/05 Javascript
jQuery查询数据返回object和字符串影响原因是什么
2013/08/09 Javascript
javascript中兼容主流浏览器的动态生成iframe方法
2014/05/05 Javascript
简述JavaScript的正则表达式中test()方法的使用
2015/06/16 Javascript
基于javascript html5实现多文件上传
2016/03/03 Javascript
AngularJS控制器之间的数据共享及通信详解
2016/08/01 Javascript
jQuery css() 方法动态修改CSS属性
2016/09/25 Javascript
微信小程序 使用canvas制作K线实例详解
2017/01/12 Javascript
vue2.0实现移动端的输入框实时检索更新列表功能
2018/05/08 Javascript
微信小程序实现bindtap等事件传参
2019/04/08 Javascript
bootstrap Table实现合并相同行
2019/07/19 Javascript
浅谈vue-router路由切换 组件重用挖下的坑
2019/11/01 Javascript
只有 20 行的 JavaScript 模板引擎实例详解
2020/05/11 Javascript
全面了解Python环境配置及项目建立
2016/06/30 Python
Python cookbook(数据结构与算法)根据字段将记录分组操作示例
2018/03/19 Python
python 判断参数为Nonetype类型或空的实例
2018/10/30 Python
基于torch.where和布尔索引的速度比较
2020/01/02 Python
python数据预处理 :数据共线性处理详解
2020/02/24 Python
Django数据统计功能count()的使用
2020/11/30 Python
你可能不熟练的十个前端HTML5经典面试题
2018/07/03 HTML / CSS
NYX Professional Makeup俄罗斯官网:世界知名的化妆品品牌
2019/12/26 全球购物
给物业的表扬信
2014/01/21 职场文书
市场安全管理制度
2014/01/26 职场文书
医药销售求职信范文
2014/02/01 职场文书
文化活动实施方案
2014/03/28 职场文书
协议书范本
2014/04/23 职场文书
和谐家庭演讲稿
2014/05/24 职场文书
小学三八妇女节活动总结
2015/02/06 职场文书
语文教师求职信范文
2015/03/20 职场文书