Maison >base de données >tutoriel mysql >Comment puis-je éviter les tableaux vides lors d'itérations plusieurs fois via les résultats `mysqli_fetch_array()` ?

Comment puis-je éviter les tableaux vides lors d'itérations plusieurs fois via les résultats `mysqli_fetch_array()` ?

DDD
DDDoriginal
2024-12-06 17:00:18693parcourir

How Can I Avoid Empty Arrays When Iterating Multiple Times Through `mysqli_fetch_array()` Results?

Duplication des appels mysqli_fetch_array()

Lorsque vous travaillez avec des résultats de base de données, il est courant de nécessiter plusieurs itérations dans les données. Cependant, la fonction mysqli_fetch_array() consomme le jeu de résultats, ce qui fait que les appels suivants renvoient des tableaux vides.

Solution : effectuez une manipulation des données avant la sortie

Pour éviter ce problème, séparez manipulation des données à partir de la sortie en suivant ces étapes :

1. Sélectionnez d'abord les données :

  • Exécutez la requête SQL et stockez le résultat dans une variable.
  • Utilisez une boucle (par exemple, while ou foreach) avec mysqli_fetch_assoc() pour récupérer les données du résultat.
  • Stocker les données récupérées dans un tableau ($données).

2. Utiliser les données à plusieurs reprises :

  • Une fois les données stockées dans le tableau $data, vous pouvez les utiliser plusieurs fois pour différentes sorties.

Exemple Code :

// Select data and store it in an array
$db_res = mysqli_query( $db_link, $sql );
$data = array();
while ($row = mysqli_fetch_assoc($db_res)) {
    $data[] = $row;
}

// Output top row
foreach ($data as $row) {

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn