PDOStatement::nextRowset
(no version information, might be only in CVS)
PDOStatement::nextRowset --
Avance à la prochaine ligne de résultats d'un gestionnaire de lignes de résultats multiples
Description
bool
PDOStatement::nextRowset ( void )
Quelques bases de données supportent les procédures stockées qui retournent
plus d'une ligne de résultats (aussi connu comme des jeux de résultats).
PDOStatement::nextRowSet() vous permet
d'accéder à la seconde et suivantes lignes de résultats associées avec l'objet
PDOStatement. Chaques lignes de résultats ont des jeux différents de colonnes
depuis la ligne de résultats.
Valeurs de retour
Cette fonction retourne TRUE en cas de
succès, FALSE en cas d'échec.
Exemples
Exemple 1. Récupération de multiples lignes de résultats retournées par une procédure stockée
L'exemple suivant montre comment appeler une procédure stockée,
MULTIPLE_RESULTS, qui retourne trois lignes de résultats.
Nous utilisons une boucle do / while pour parcourir la méthode
PDOStatement::nextRowset(), qui
retourne FALSE et termine la boucle lorsque plus aucune ligne de résultats
ne peut être retournée.
<?php $sql = 'CALL multiple_rowsets()'; $stmt = $conn->query($sql); $i = 1; do { $rowset = $stmt->fetchAll(PDO::FETCH_NUM); if ($rowset) { printResultSet($rowset, $i); } $i++; } while ($stmt->nextRowset());
function printResultSet(&$rowset, $i) { print "Jeu de résultats $i:\n"; foreach ($rowset as $row) { foreach ($row as $col) { print $col . "\t"; } print "\n"; } print "\n"; } ?>
|
L'exemple ci-dessus va afficher : Jeu de résultats 1:
apple red
banana yellow
Jeu de résultats 2:
orange orange 150
banana yellow 175
Jeu de résultats 3:
lime green
apple red
banana yellow |
|
Voir aussi
PDOStatement::columnCount() |
PDOStatement::execute() |
PDOStatement::getColumnMeta() |
PDOStatement::query() |