首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

PDOStatement::bindColumn

(PHP 5 >= 5.1.0, PHP 7, PECL pdo >= 0.1.0)

PDOStatement :: bindColumn - 将列绑定到PHP变量

描述

代码语言:javascript
复制
public bool PDOStatement::bindColumn ( mixed $column , mixed &$param [, int $type [, int $maxlen [, mixed $driverdata ]]] )

PDOStatement :: bindColumn()安排将特定变量绑定到查询结果集中的给定列。每次调用PDOStatement :: fetch()或PDOStatement :: fetchAll()都会更新绑定到列的所有变量。

注意:由于有关列的信息在执行语句前并不总是可用于PDO,所以可移植应用程序应 PDOStatement :: execute()调用此函数。但是,为了能够在使用PgSQL驱动程序时将LOB列作为流绑定,应用程序应调用PDOStatement :: execute()之前调用此方法,否则对象OID将作为整数返回。

参数

column

结果集里列的编号(1索引)或列的名称。如果使用列名称,请注意该名称应与驱动程序返回的列大小写匹配。

param

将绑定该列的PHP变量的名称。

type

参数的数据类型,由PDO :: PARAM_ *常量指定。

maxlen

预先分配的提示。

driverdata

驱动程序的可选参数。

返回值

成功时返回TRUE或失败时返回FALSE

示例

Example#1将结果集输出绑定到PHP变量

将结果集里的列绑定到PHP变量是使每行中包含的数据立即可供您的应用程序使用的有效方法。以下示例演示PDO如何允许您使用各种选项和智能默认值来绑定、检索列。

代码语言:javascript
复制
<?php
function?readData($dbh)?{
??$sql?=?'SELECT?name,?colour,?calories?FROM?fruit';
??try?{
????$stmt?=?$dbh->prepare($sql);
????$stmt->execute();

????/*?Bind?by?column?number?*/
????$stmt->bindColumn(1,?$name);
????$stmt->bindColumn(2,?$colour);
????
????/*?Bind?by?column?name?*/
????$stmt->bindColumn('calories',?$cals);

????while?($row?=?$stmt->fetch(PDO::FETCH_BOUND))?{
??????$data?=?$name?.?"\t"?.?$colour?.?"\t"?.?$cals?.?"\n";
??????print?$data;
????}
??}
??catch?(PDOException?$e)?{
????print?$e->getMessage();
??}
}
readData($dbh);
?>

上面的例子将输出:

代码语言:javascript
复制
apple   red     150
banana  yellow  175
kiwi    green   75
orange  orange  150
mango   red     200
strawberry      red     25

扩展内容

  • PDOStatement :: execute() - 执行准备好的语句
  • PDOStatement :: fetch() - 从结果集中获取下一行
  • PDOStatement :: fetchAll() - 返回一个包含所有结果集行的数组
  • PDOStatement :: fetchColumn() - 返回结果集的下一行中的单个列

← PDOStatement

PDOStatement::bindParam →

扫码关注腾讯云开发者

领取腾讯云代金券

http://www.vxiaotou.com