fetchColumn return boolean false when a row not is found or don't had more rows.
PDOStatement::fetchColumn
(PHP 5 >= 5.1.0, PECL pdo >= 0.9.0)
PDOStatement::fetchColumn — Devuelve una única columna de la siguiente fila de un conjunto de resultados
Descripción
$column_number = 0
] )
Devuelve una única columna de la siguiente fila de un conjunto de resultados, o FALSE si
no existen más filas.
Parámetros
-
column_number -
El número de índice basado en 0 de la columna que se quiere obtener desde la fila. Si no se proporicona ningún valor, PDOStatement::fetchColumn() obtiene la primera columna.
Valores devueltos
PDOStatement::fetchColumn() devuelve una única columna de la siguiente fila de un conjunto de resultados.
No existe una forma de devolver otra columna de la misma fila si se utiliza PDOStatement::fetchColumn() para recuperar datos.
Ejemplos
Ejemplo #1 Devolver la primera columna de la siguiente fila
<?php
$gsent = $gbd->prepare("SELECT name, colour FROM fruit");
$gsent->execute();
/* Obtener la primera columna de la siguiente fila del conjunto de resultados */
print("Obtener la primera columna de la siguiente fila del conjunto de resultados:\n");
$resultado = $gsent->fetchColumn();
print("nombre = $resultado\n");
print("Obtener la segunda columna de la siguiente fila del conjunto de resultados:\n");
$resultado = $gsent->fetchColumn(1);
print("color = $resultado\n");
?>
El resultado del ejemplo sería:
Obtener la primera columna de la siguiente fila del conjunto de resultados: nombre = lemon Obtener la segunda columna de la siguiente fila del conjunto de resultados: color = red
Ver también
- PDO::query() - Ejecuta una sentencia SQL, devolviendo un conjunto de resultados como un objeto PDOStatement
- PDOStatement::fetch() - Obtiene la siguiente fila de un conjunto de resultados
- PDOStatement::fetchAll() - Devuelve un array que contiene todas las filas del conjunto de resultados
- PDO::prepare() - Prepara una sentencia para su ejecución y devuelve un objeto sentencia
- PDOStatement::setFetchMode() - Establece el modo de obtención para esta sentencia
WARNING: PhoenixSegovia isn't quite correct. Perhaps it's implementation-dependent, but fetchColumn returns the empty string in my program. Beware!
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.
