mysqli_fetch_array

(PHP 5 CVS only)

mysqli_fetch_array --  Retourne une ligne de résultat sous la forme d'un tableau associatif, d'un tableau indexé, ou les deux.

Description

array mysqli_fetch_array ( resource result [, int resulttype])

Retourne un tableau qui correspond à la ligne lue ou FALSE s'il n'y a plus de lignes pour la connexion spécifiée par le paramètre link.

mysqli_fetch_array() est une version étendue de la fonction mysqli_fetch_row(). 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 clefs.

Si plusieurs colonnes portent le même nom, la dernière colonne aura la priorité. Pour accéder aux autres colonnes du même nom, vous devez utiliser l'index numérique, ou faire un alias pour chaque colonne.

Le second argument optionnel result_type 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. MYSQLI_BOTH est la valeur par défaut de ce paramètre.

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.

Note : Les noms de colonnes renvoyés par cette fonction sont sensibles à la casse.

Exemple 1. mysqli_fetch_array() avec MYSQLI_NUM

<?php
    mysqli_connect
("localhost", "mysql_user", "mysql_password") or
        die(
"Impossible de se connecter : " . mysqli_error());
    
mysqli_select_db("mydb");

    
$result = mysqli_query("SELECT id, name FROM mytable");

    while (
$row = mysqli_fetch_array($result, MYSQLI_NUM)) {
        
printf ("ID: %s  Name: %s", $row[0], $row[1]);  
    }

    
mysqli_free_result($result);
?>

Exemple 2. mysqli_fetch_array() avec MYSQLI_ASSOC

<?php
    mysqli_connect
("localhost", "mysql_user", "mysql_password") or
        die(
"Impossible de se connecter : " . mysqli_error());
    
mysqli_select_db("mydb");

    
$result = mysqli_query("SELECT id, name FROM mytable");

    while (
$row = mysqli_fetch_array($result, MYSQLI_ASSOC)) {
        
printf ("ID: %s  Name: %s", $row["id"], $row["name"]);
    }

    
mysqli_free_result($result);
?>

Exemple 3. mysqli_fetch_array() avec MYSQLI_BOTH

<?php
    mysqli_connect
("localhost", "mysql_user", "mysql_password") or
        die(
"Impossible de se connecter : " . mysqli_error());
    
mysqli_select_db("mydb");

    
$result = mysqli_query("SELECT id, name FROM mytable");

    while (
$row = mysqli_fetch_array($result, MYSQLI_BOTH)) {
        
printf ("ID: %s  Name: %s", $row[0], $row["name"]);
    }

    
mysqli_free_result($result);
?>

Voir aussi mysqli_fetch_assoc(), mysqli_fetch_row() et mysqli_fetch_object().