mysqli_result::fetch_assoc

mysqli_fetch_assoc

(PHP 5)

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

Description

Style orienté objet

array mysqli_result::fetch_assoc ( void )

Style procédural

array mysqli_fetch_assoc ( mysqli_result $result )

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

LoadingChargement en cours