PHP PDOStatement::bindParam讲解


Posted in PHP onJanuary 30, 2019

PDOStatement::bindParam

PDOStatement::bindParam — 绑定一个参数到指定的变量名(PHP 5 >= 5.1.0, PECL pdo >= 0.1.0)

说明

语法

bool PDOStatement::bindParam ( mixed $parameter , mixed &$variable [, int $data_type = PDO::PARAM_STR [, int $length [, mixed $driver_options ]]] )

绑定一个PHP变量到用作预处理的SQL语句中的对应命名占位符或问号占位符。 不同于PDOStatement::bindValue() ,此变量作为引用被绑定,并只在PDOStatement::execute()被调用的时候才取其值。

大多数参数是输入参数,即,参数以只读的方式用来建立查询。一些驱动支持调用存储过程并作为输出参数返回数据,一些支持作为输入/输出参数,既发送数据又接收更新后的数据。

参数

parameter

  • 参数标识符。对于使用命名占位符的预处理语句,应是类似 :name 形式的参数名。对于使用问号占位符的预处理语句,应是以1开始索引的参数位置。

variable

  • 绑定到 SQL 语句参数的 PHP 变量名。

data_type

  • 使用 PDO::PARAM_* 常量明确地指定参数的类型。要从一个存储过程中返回一个 INOUT 参数,需要为 data_type 参数使用按位或操作符去设置 PDO::PARAM_INPUT_OUTPUT 位。

length

  • 预分配提示。

driverdata

  • 数据类型的长度。为表明参数是一个存储过程的 OUT 参数,必须明确地设置此长度。

driver_options

返回值

成功时返回 TRUE,或者在失败时返回 FALSE。

实例

执行一条使用命名占位符的预处理语句

<?php
/* 通过绑定的 PHP 变量执行一条预处理语句 */
$calories = 150;
$colour = 'red';
$sth = $dbh->prepare('SELECT name, colour, calories
  FROM fruit
  WHERE calories < :calories AND colour = :colour');
$sth->bindParam(':calories', $calories, PDO::PARAM_INT);
$sth->bindParam(':colour', $colour, PDO::PARAM_STR, 12);
$sth->execute();
?>

执行一条使用问号占位符的预处理语句

<?php
/* 通过绑定的 PHP 变量执行一条预处理语句 */
$calories = 150;
$colour = 'red';
$sth = $dbh->prepare('SELECT name, colour, calories
  FROM fruit
  WHERE calories < ? AND colour = ?');
$sth->bindParam(1, $calories, PDO::PARAM_INT);
$sth->bindParam(2, $colour, PDO::PARAM_STR, 12);
$sth->execute();
?>

使用 INOUT 参数调用一个存储过程

<?php
/* 使用 INOUT 参数调用一个存储过程 */
$colour = 'red';
$sth = $dbh->prepare('CALL puree_fruit(?)');
$sth->bindParam(1, $colour, PDO::PARAM_STR|PDO::PARAM_INPUT_OUTPUT, 12);
$sth->execute();
print("After pureeing fruit, the colour is: $colour");
?>

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对三水点靠木的支持。如果你想了解更多相关内容请查看下面相关链接

PHP 相关文章推荐
PHP中for与foreach的区别分析
Mar 09 PHP
php学习笔记之 函数声明
Jun 09 PHP
php通过COM类调用组件的实现代码
Jan 11 PHP
php存储过程调用实例代码
Feb 03 PHP
php抽奖小程序的实现代码
Jun 18 PHP
php格式化电话号码的方法
Apr 24 PHP
PHP中遇到的时区问题解决方法
Jul 23 PHP
php计算title标题相似比的方法
Jul 29 PHP
PHP5.3新特性小结
Feb 14 PHP
PHP线程的内存回收问题
Jul 08 PHP
php使用parse_str实现查询字符串解析到变量中的方法
Feb 17 PHP
php获取是星期几的的一些常用姿势
Dec 15 PHP
PHP PDOStatement::bindColumn讲解
Jan 30 #PHP
PHP连接及操作PostgreSQL数据库的方法详解
Jan 30 #PHP
PDO::setAttribute讲解
Jan 29 #PHP
PDO::rollBack讲解
Jan 29 #PHP
PDO::quote讲解
Jan 29 #PHP
PDO::query讲解
Jan 29 #PHP
PDO::prepare讲解
Jan 29 #PHP
You might like
php连接mssql数据库的几种方法
2013/02/21 PHP
php通过正则表达式记取数据来读取xml的方法
2015/03/09 PHP
php随机生成数字字母组合的方法
2015/03/18 PHP
php 运算符与表达式详细介绍
2016/11/30 PHP
PHP正则匹配反斜杠'\'和美元'$'的方法
2017/02/08 PHP
ThinkPHP5&amp;5.1框架关联模型分页操作示例
2019/08/03 PHP
JS函数验证总结(方便js客户端输入验证)
2010/10/29 Javascript
Js中的onblur和onfocus事件应用介绍
2013/08/27 Javascript
可选择和输入的下拉列表框示例
2013/11/05 Javascript
判断js中各种数据的类型方法之typeof与0bject.prototype.toString讲解
2013/11/07 Javascript
jquery插件之定时查询待处理任务数量
2014/05/01 Javascript
VS2008中使用JavaScript调用WebServices
2014/12/18 Javascript
jquery 插件实现瀑布流图片展示实例
2015/04/03 Javascript
jquery实现漂亮的二级下拉菜单代码
2015/08/26 Javascript
jQuery简单实现仿京东商城的左侧菜单效果代码
2015/09/09 Javascript
详解JavaScript节流函数中的Throttle
2016/07/16 Javascript
jQuery中each方法的使用详解
2018/03/18 jQuery
Vue项目pdf(base64)转图片遇到的问题及解决方法
2018/10/19 Javascript
超详细动手搭建一个VuePress 站点及开启PWA与自动部署的方法
2019/01/27 Javascript
JavaScript 截取字符串代码实例
2019/09/05 Javascript
在Python下使用Txt2Html实现网页过滤代理的教程
2015/04/11 Python
python中的闭包用法实例详解
2015/05/05 Python
Python的Django REST框架中的序列化及请求和返回
2016/04/11 Python
详解Python中使用base64模块来处理base64编码的方法
2016/07/01 Python
Python multiprocessing多进程原理与应用示例
2019/02/28 Python
Django中的用户身份验证示例详解
2019/08/07 Python
在Python中os.fork()产生子进程的例子
2019/08/08 Python
Python 解决火狐浏览器不弹出下载框直接下载的问题
2020/03/09 Python
HTML5之SVG 2D入门10—滤镜的定义及使用
2013/01/30 HTML / CSS
美国NBA官方商店:NBA Store
2019/04/12 全球购物
Perfume’s Club中文官网:西班牙美妆在线零售品牌
2020/08/24 全球购物
农民致富事迹材料
2014/01/23 职场文书
环境科学专业优秀毕业生自荐书
2014/02/03 职场文书
2014年校务公开工作总结
2014/12/18 职场文书
学生检讨书范文
2015/01/27 职场文书
python中的被动信息搜集
2021/04/29 Python