首页
学习
活动
专区
工具
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 →

扫码关注腾讯云开发者

领取腾讯云代金券