Manuel PHP

PDOStatement->nextRowset

(No version information available, 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. Chaque ligne de résultats a 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.

  1. <?php
  2. $sql = 'CALL multiple_rowsets()';  
  3. $stmt = $conn->query($sql);  
  4. $i = 1;  
  5. do { 
  6.    $rowset = $stmt->fetchAll(PDO::FETCH_NUM); 
  7.    if ($rowset) { 
  8.       printResultSet($rowset, $i); 
  9.    } 
  10.    $i++;  
  11. } while ($stmt->nextRowset());  
  12.  
  13. function printResultSet(&$rowset, $i) { 
  14.    print "Jeu de résultats$i:\n"; 
  15.    foreach ($rowset as $row) { 
  16.       foreach ($row as $col) { 
  17.          print $col . "\t"; 
  18.       } 
  19.       print "\n"; 
  20.    } 
  21.    print "\n";  
  22. }  
  23. ?> 

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


Remonter Remonter
L'éditeur javascript - CSS - Gentoo - Tutoriaux PHP - Tutoriels PHP - Bretagne - php - Moto - Kit graphique