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采集相关教程之一 CURL函数库
Feb 15 PHP
php数组函数序列之end() - 移动数组内部指针到最后一个元素,并返回该元素的值
Oct 31 PHP
thinkphp中连接oracle时封装方法无法用的解决办法
Jun 17 PHP
PHP中strlen()和mb_strlen()的区别浅析
Jun 19 PHP
php生成随机数的三种方法
Sep 10 PHP
php注册登录系统简化版
Dec 28 PHP
使用phpexcel类实现excel导入mysql数据库功能(实例代码)
May 12 PHP
PHP 将数组打乱 shuffle函数的用法及简单实例
Jun 17 PHP
PHP生成短网址方法汇总
Jul 12 PHP
Yii框架表单提交验证功能分析
Jan 07 PHP
微信企业转账之入口类分装php代码
Oct 01 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
自制短波长线天线频率预选器 - 成功消除B2K之流的镜像
2021/03/02 无线电
PHP获取本周第一天和最后一天示例代码
2014/02/24 PHP
Windows下PHP开发环境搭建教程(Apache+PHP+MySQL)
2016/06/13 PHP
Display SQL Server Version Information
2007/06/21 Javascript
javascript 放大镜 v1.0 基于Yui2 实现的放大镜效果
2010/03/08 Javascript
网络之美 JavaScript中Get和Set访问器的实现代码
2010/09/19 Javascript
js函数在frame中的相互调用详解
2014/03/03 Javascript
基于js里调用函数时,函数名带括号和不带括号的区别
2016/07/28 Javascript
jQuery实现发送验证码并60秒倒计时功能
2016/11/25 Javascript
H5图片压缩与上传实例
2017/04/21 Javascript
javascript 中关于array的常用方法详解
2017/05/05 Javascript
Bootstrap table使用方法总结
2017/05/10 Javascript
详解Angular 中 ngOnInit 和 constructor 使用场景
2017/06/22 Javascript
vue如何引入sass全局变量
2018/06/28 Javascript
Angular5集成eventbus的示例代码
2018/07/19 Javascript
JavaScript原型链与继承操作实例总结
2018/08/24 Javascript
微信小程序实现简单跑马灯效果
2020/05/26 Javascript
Python中使用Queue和Condition进行线程同步的方法
2016/01/19 Python
itchat接口使用示例
2017/10/23 Python
Python3.6日志Logging模块简单用法示例
2018/06/14 Python
Python+OpenCV实现图像融合的原理及代码
2018/12/03 Python
详解python:time模块用法
2019/03/25 Python
Python自动化导出zabbix数据并发邮件脚本
2019/08/16 Python
520使用Python实现“我爱你”表白
2020/05/20 Python
基于 HTML5 WebGL 实现的医疗物流系统
2019/10/08 HTML / CSS
介绍一下Make? 为什么使用make
2016/07/31 面试题
MYSQL基础面试题
2012/05/13 面试题
新学期开学标语
2014/06/30 职场文书
新颖的化妆品活动方案
2014/08/21 职场文书
纪检干部先进事迹材料
2014/08/23 职场文书
2014年乡镇团委工作总结
2014/12/18 职场文书
入党申请书格式
2019/06/20 职场文书
2019年公司卫生管理制度样本
2019/08/21 职场文书
JavaScript继承的三种方法实例
2021/05/12 Javascript
python批量创建变量并赋值操作
2021/06/03 Python
使用RedisTemplat实现简单的分布式锁
2021/11/20 Redis