mysqli_result::fetch_assoc

mysqli_fetch_assoc

(PHP 5, PHP 7)

mysqli_result::fetch_assoc -- mysqli_fetch_assocRécupère une ligne de résultat sous forme de tableau associatif

Description

Style orienté objet

mysqli_result::fetch_assoc ( void ) : array

Style procédural

mysqli_fetch_assoc ( mysqli_result $result ) : array

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);
?>

Les exemples ci-dessus vont afficher :

Pueblo (USA)
Arvada (USA)
Cape Coral (USA)
Green Bay (USA)
Santa Clara (USA)

Exemple #3 Exemple avec MySQLi_Result et l'utilisation d'un iterator

<?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