mysqli_result::fetch_assoc
mysqli_fetch_assoc
(PHP 5)
mysqli_result::fetch_assoc -- mysqli_fetch_assoc — Récupère une ligne de résultat sous forme de tableau associatif
Description
Style orienté objet
Style procédural
Retourne un tableau associatif qui correspond à la ligne
récupérée ou NULL s'il n'y a plus de ligne.
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.
Liste de paramètres
-
result -
Style procédural uniquement : Un identifiant de jeu de résultats retourné par la fonction mysqli_query(), mysqli_store_result() ou mysqli_use_result().
Valeurs de retour
Retourne un tableau associatif de chaînes représentant la prochaine
ligne dans le jeu de résultats représenté par le paramètre
result, où chaque clé du
tableau représente le nom d'une colonne du résultat ou
NULL s'il n'y a plus de ligne dans le jeu de résultats.
Si deux ou plus colonnes dans le jeu de résultat ont le même nom, le tableau associatif retourné par la fonction mysqli_fetch_assoc() ne contiendra que la valeur de la dernière colonne de ce nom. Si vous devez travailler avec des jeux de résultats ayant cette particularité, la fonction mysqli_fetch_row() qui retourne un tableau indexé doit être utilisée à la place.
Exemples
Exemple #1 Style orienté objet
<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");
/* Vérification de la connexion */
if (mysqli_connect_errno()) {
printf("Échec de la connexion : %s\n", mysqli_connect_error());
exit();
}
$query = "SELECT Name, CountryCode FROM City ORDER by ID DESC LIMIT 50,5";
if ($result = $mysqli->query($query)) {
/* Récupère un tableau associatif */
while ($row = $result->fetch_assoc()) {
printf ("%s (%s)\n", $row["Name"], $row["CountryCode"]);
}
/* Libération des résultats */
$result->free();
}
/* Fermeture de la connexion */
$mysqli->close();
?>Exemple #2 Style procédural
<?php $link = mysqli_connect("localhost", "my_user", "my_password", "world"); /* Vérification de la connexion */ if (mysqli_connect_errno()) { printf("Échec de la connexion : %s\n", mysqli_connect_error()); exit(); } $query = "SELECT Name, CountryCode FROM City ORDER by ID DESC LIMIT 50,5"; if ($result = mysqli_query($link, $query)) { /* Récupère un tableau associatif */ while ($row = mysqli_fetch_assoc($result)) { printf ("%s (%s)\n", $row["Name"], $row["CountryCode"]); } /* Libération des résultats */ mysqli_free_result($result); } /* Fermeture de la connexion */ mysqli_close($link); ?>
<?php $c = mysqli_connect('127.0.0.1','user', 'pass'); // Utilisation d'itérateurs (support ajouté en PHP 5.4) foreach ( $c->query('SELECT user,host FROM mysql.user') as $row ) { printf("'%s'@'%s'\n", $row['user'], $row['host']); } echo "\n==================\n"; // Sans utiliser les itérateurs $result = $c->query('SELECT user,host FROM mysql.user'); while ($row = $result->fetch_assoc()) { printf("'%s'@'%s'\n", $row['user'], $row['host']); } ?>
L'exemple ci-dessus va afficher quelque chose de similaire à :
'root'@'192.168.1.1' 'root'@'127.0.0.1' 'dude'@'localhost' 'lebowski'@'localhost' ================== 'root'@'192.168.1.1' 'root'@'127.0.0.1' 'dude'@'localhost' 'lebowski'@'localhost'
Voir aussi
- mysqli_fetch_array() - Retourne une ligne de résultat sous la forme d'un tableau associatif, d'un tableau indexé, ou les deux
- mysqli_fetch_row() - Récupère une ligne de résultat sous forme de tableau indexé
- mysqli_fetch_object() - Retourne la ligne courante d'un jeu de résultat sous forme d'objet
- mysqli_query() - Exécute une requête sur la base de données
- mysqli_data_seek() - Déplace le pointeur interne de résultat
