db2_fetch_both
(PECL ibm_db2 >= 1.0.0)
db2_fetch_both — Retourne un tableau, indexé par nom de colonne et position, représentant une ligne du jeu de résultats
Description
$stmt
[, int $row_number
= -1
] )Retourne un tableau, indexé par nom de colonne et position, représentant une ligne du jeu de résultats. Notez que la ligne retournée par db2_fetch_both() nécessite plus de mémoire que les tableaux simplement indexés retournés par db2_fetch_assoc() ou db2_fetch_array().
Liste de paramètres
-
stmt
-
Une ressource stmt valide contenant le jeu de résultats.
-
row_number
-
Demande une ligne spécifique indexée numériquement qui commence par la valeur 1 au jeu de résultat. En fournissant ce paramètre, vous obtiendrez une alerte PHP si le jeu de résultat utilise une curseur d'avancement seul.
Valeurs de retour
Retourne un tableau associatif avec les valeurs des colonnes indexées par
le nom des colonnes et le numéro des colonnes commençant par 0. Le tableau
représente la ligne suivante ou la ligne demandée du jeu de résultats.
Retourne FALSE
s'il n'y a pas de ligne disponible dans le jeu de
résultats ou si la ligne demandée par row_number
n'existe pas dans le jeu de résultats.
Exemples
Exemple #1 Itère avec un curseur d'avancement seul
Si vous appelez db2_fetch_both() sans le numéro d'une ligne spécifique, la ligne suivante sera automatiquement récupérée par le jeu de résultats. L'exemple suivant accède aux colonnes retournées dans le tableau avec la méthode des noms de colonne et par indice numérique.
<?php
$sql = "SELECT id, nom, race, poids FROM animaux ORDER BY race";
$stmt = db2_prepare($conn, $sql);
$result = db2_execute($stmt);
while ($row = db2_fetch_both($stmt)) {
printf ("%-5d %-16s %-32s %10s\n",
$row['ID'], $row[0], $row['RACE'], $row[3]);
}
?>
L'exemple ci-dessus va afficher :
0 Pook chat 3.20 5 Rickety Ride chèvre 9.70 2 Smarty cheval 350.00
Exemple #2 Récupération de lignes spécifiques avec db2_fetch_both() provenant d'un curseur flottant
Si votre jeu de résultats utilise un curseur flottant, vous pouvez appeler la fonction db2_fetch_assoc() avec une numéro de ligne spécifique. L'exemple suivant récupère chaque ligne paire dans le jeu de résultats, commençant avec la deuxième ligne.
<?php
$sql = "SELECT id, nom, race, poids FROM animaux ORDER BY race";
$result = db2_exec($stmt, $sql, array('cursor' => DB2_SCROLLABLE));
$i=2;
while ($row = db2_fetch_both($result, $i)) {
printf ("%-5d %-16s %-32s %10s\n",
$row[0], $row['NOM'], $row[2], $row['POIDS']);
$i = $i + 2;
}
?>
L'exemple ci-dessus va afficher :
0 Pook chat 3.20 5 Rickety Ride chèvre 9.70 2 Smarty cheval 350.00
Voir aussi
- db2_fetch_array() - Retourne un tableau, indexé par la position des colonnes, représentant une ligne du jeu de résultats
- db2_fetch_assoc() - Retourne un tableau, indexé par nom de colonne, représentant une ligne du jeu de résultats
- db2_fetch_object() - Retourne un objet avec les propriétés représentant des colonnes dans la ligne extraite
- db2_fetch_row() - Modifie le pointeur du jeu de résultat à la prochaine ligne ou à la ligne demandée
- db2_result() - Retourne une colonne d'une ligne d'un jeu de résultats
Document créé le 30/01/2003, dernière modification le 26/10/2018
Source du document imprimé : https://www.gaudry.be/php-rf-db2-fetch-both.html
L'infobrol est un site personnel dont le contenu n'engage que moi. Le texte est mis à disposition sous licence CreativeCommons(BY-NC-SA). Plus d'info sur les conditions d'utilisation et sur l'auteur.
Références
Ces références et liens indiquent des documents consultés lors de la rédaction de cette page, ou qui peuvent apporter un complément d'information, mais les auteurs de ces sources ne peuvent être tenus responsables du contenu de cette page.
L'auteur de ce site est seul responsable de la manière dont sont présentés ici les différents concepts, et des libertés qui sont prises avec les ouvrages de référence. N'oubliez pas que vous devez croiser les informations de sources multiples afin de diminuer les risques d'erreurs.