PDOStatement
在线手册:中文 英文
PHP手册

PDOStatement::fetchColumn

(PHP 5 >= 5.1.0, PECL pdo >= 0.9.0)

PDOStatement::fetchColumn Returns a single column from the next row of a result set

说明

string PDOStatement::fetchColumn ([ int $column_number = 0 ] )

Returns a single column from the next row of a result set or FALSE if there are no more rows.

参数

column_number

0-indexed number of the column you wish to retrieve from the row. If no value is supplied, PDOStatement::fetchColumn() fetches the first column.

返回值

PDOStatement::fetchColumn() returns a single column in the next row of a result set.

Warning

There is no way to return another column from the same row if you use PDOStatement::fetchColumn() to retrieve data.

范例

Example #1 Return first column of the next row

<?php
$sth 
$dbh->prepare("SELECT name, colour FROM fruit");
$sth->execute();

/* Fetch the first column from the next row in the result set */
print("Fetch the first column from the next row in the result set:\n");
$result $sth->fetchColumn();
print(
"name = $result\n");

print(
"Fetch the second column from the next row in the result set:\n");
$result $sth->fetchColumn(1);
print(
"colour = $result\n");
?>

以上例程会输出:

Fetch the first column from the next row in the result set:
name = lemon
Fetch the second column from the next row in the result set:
colour = red

参见


PDOStatement
在线手册:中文 英文
PHP手册
PHP手册 - N: Returns a single column from the next row of a result set

用户评论:

Nathan Pohpam (21-Mar-2012 10:49)

WARNING: PhoenixSegovia isn't quite correct. Perhaps it's implementation-dependent, but fetchColumn returns the empty string in my program. Beware!

PhoneixSegovia at GOOGLE_MAIL_SERVER dot com (21-Oct-2010 10:13)

fetchColumn return boolean false when a row not is found or don't had more rows.

seanferd at assmasterdonkeyranch dot com (25-Jan-2007 11:04)

This is an excellent method for returning a column count. For example:

<?php
$db
= new PDO('mysql:host=localhost;dbname=pictures','user','password');
$pics = $db->query('SELECT COUNT(id) FROM pics');
$this->totalpics = $pics->fetchColumn();
$db = null;
?>
In my case $pics->fetchColumn() returns 641 because that is how many pictures I have in my db.