(PHP 5, PHP 7, PHP 8)
mysqli_result::fetch_array -- mysqli_fetch_array — Récupère la ligne suivante d'un ensemble de résultats sous forme de tableau associatif, numérique ou les deux
Style orienté objet
Style procédural
Retourne une ligne de données de l'ensemble de résultats et la renvoie sous forme de tableau.
Chaque appel ultérieur à cette fonction renverra la ligne suivante dans l'ensemble de résultats,
ou null
s'il n'y a plus de lignes.
En plus d'enregistrer les données sous forme d'un tableau à indices numériques, elle peut aussi les enregistrer dans un tableau associatif, en utilisant les noms des champs comme clés.
Si deux ou plusieurs colonnes du résultat ont le même nom, la dernière colonne sera prioritaire et écrasera toutes les données précédentes. Pour accéder aux autres colonnes du même nom, vous devez utiliser l'index numérique, ou faire un alias pour chaque colonne.
Note: Les noms des champs retournés par cette fonction sont sensibles à la casse.
Note: Cette fonction définit les champs NULL à la valeur PHP
null
.
result
Style procédural uniquement : Un objet mysqli_result retourné par mysqli_query(), mysqli_store_result(), mysqli_use_result(), ou mysqli_stmt_get_result().
mode
Le second argument optionnel est une constante indiquant quel
type de tableau doit être renvoyé à partir de la ligne de données
courante. Les valeurs possibles pour ce paramètre sont les constantes
MYSQLI_ASSOC
, MYSQLI_NUM
,
et MYSQLI_BOTH
.
En utilisant la constante MYSQLI_ASSOC
, cette fonction
se comportera comme la fonction mysqli_fetch_assoc(),
tandis que MYSQLI_NUM
la fera agir comme la fonction
mysqli_fetch_row(). La constante
MYSQLI_BOTH
, créera elle un tableau qui sera à la fois
associatif et indexé numériquement.
Retourne un tableau représentant la ligne récupérée,
null
s'il n'y a plus de lignes dans le jeu de résultats, ou false
si une erreur survient.
Exemple #1 mysqli_result::fetch_array() example
Style orienté objet
<?php
mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");
$query = "SELECT Name, CountryCode FROM City ORDER BY ID LIMIT 3";
$result = $mysqli->query($query);
/* Tableau numérique */
$row = $result->fetch_array(MYSQLI_NUM);
printf("%s (%s)\n", $row[0], $row[1]);
/* Tableau associatif */
$row = $result->fetch_array(MYSQLI_ASSOC);
printf("%s (%s)\n", $row["Name"], $row["CountryCode"]);
/* Tableau associatif et numérique */
$row = $result->fetch_array(MYSQLI_BOTH);
printf("%s (%s)\n", $row[0], $row["CountryCode"]);
Style procédural
<?php
mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
$mysqli = mysqli_connect("localhost", "my_user", "my_password", "world");
$query = "SELECT Name, CountryCode FROM City ORDER by ID LIMIT 3";
$result = mysqli_query($mysqli, $query);
/* Tableau numérique */
$row = mysqli_fetch_array($result, MYSQLI_NUM);
printf("%s (%s)\n", $row[0], $row[1]);
/* Tableau associatif */
$row = mysqli_fetch_array($result, MYSQLI_ASSOC);
printf("%s (%s)\n", $row["Name"], $row["CountryCode"]);
/* Tableau associatif et numérique */
$row = mysqli_fetch_array($result, MYSQLI_BOTH);
printf("%s (%s)\n", $row[0], $row["CountryCode"]);
Les exemples ci-dessus vont afficher quelque chose de similaire à :
Kabul (AFG) Qandahar (AFG) Herat (AFG)