MDB_Common::fetchAll()

MDB_Common::fetchAll() -- Récupère le résultat dans un tableau

Synopsis

require_once 'MDB.php';

array &fetchAll (resource $result, integer [$fetchmode = MDB_FETCHMODE_DEFAULT], boolean [$rekey = FALSE], boolean [$force_array = FALSE], boolean [$group = FALSE])

Description

Récupère le jeu de résultats complet et le retourne dans un tableau, puis, libère le jeu de résultats.

Paramètres

resource $result

une ressource valide retournée par query() ou executeQuery()

entier $fetchmode

le mode de récupération à utiliser

booléen $rekey

si défini à TRUE, le tableau résultant sera modifié comme suit : Si le jeu de résultats contient plus de deux colonnes, la valeur sera un tableau de valeurs depuis la colonne 2 à n. Si le jeu de résultats contient uniquemement deux colonnes, la valeur retournée sera un scalaire, avec la valeur de la seconde colonne (forcé à un tableau avec le paramètre $force_array).

booléen $force_array

utilisé uniquement si la requête retourne exactement deux colonnes. Si vaut TRUE, les valeurs du tableau retourné seront un tableau d'un seul élément plutôt qu'un scalaire.

booléen boolean $group

si vaut TRUE, les valeurs du tableau retourné seront mises dans un autre tableau. Si la même valeur de clé (dans la première colonne) se répète, les valeurs seront ajoutées à ce tableau plutôt que d'écraser les valeurs existantes.

Valeur retournée

array - un tableau ou une MDB_Error si une erreur survient.

Valeurs renvoyées

Tableau 34-1. Valeurs PEAR_Error possibles

Code erreurMessage d'erreurRaisonSolution
MDB_ERROR_TRUNCATED NULL Le jeu de résultats contient moins de deux colonnes Vérifiez la requête SQL ou choisissez une autre fonction query*()
n'importe quel code erreur  Erreur spécifique à la base de données Vérifiez la section relative à la base de données dans le manuel PHP afin de détecter la raison de cette erreur. Dans la plupart des cas, une requête SQL incorrecte, i.e. utilisation d'une clause LIMIT dans une requête destinée à une base de données Oracle.

Note

Cette fonction ne peut pas être appelée de façon statique.

Voir aussi

query() , limitQuery() , prepareQuery() , executeQuery() , fetchRow() , fetchOne() , fetchCol()