Maison > base de données > tutoriel mysql > le corps du texte

Pourquoi ma boucle foreach affiche-t-elle des données doublées lors de l'utilisation de « mysql_fetch_array » ?

Patricia Arquette
Libérer: 2024-10-27 20:25:30
original
828 Les gens l'ont consulté

Why does my foreach loop display doubled data when using `mysql_fetch_array`?

Résultats doublés dans le tableau (mysql_fetch_array)

Le code donné rencontre un problème où la boucle foreach affiche des données doublées en raison du fonctionnement de mysql_fetch_array . Par défaut, il attribue des index numériques et associatifs à chaque élément du tableau de résultats. Cet effet peut être observé dans la sortie print_r, où apparaissent les deux index (0, 1, 2, etc.) et leurs clés correspondantes (id, Department_id, nom, etc.).

Pour résoudre ce problème, vous pouvez spécifier le type d'index souhaité dans l'appel de fonction mysql_fetch_array. En passant MYSQL_NUM comme deuxième paramètre, vous pouvez récupérer un tableau avec uniquement des clés numériques. Alternativement, MYSQL_ASSOC renverra un tableau avec uniquement des clés associatives.

<code class="php">// Get numeric keys only
$query_result_array = mysql_fetch_array($query_result, MYSQL_NUM);

// Get associative keys only
$query_result_array = mysql_fetch_array($query_result, MYSQL_ASSOC);</code>
Copier après la connexion

Vous pouvez également utiliser les fonctions mysql_fetch_row et mysql_fetch_assoc, qui renvoient spécifiquement des tableaux numériques ou associatifs, respectivement :

<code class="php">// Get numeric keys only
$query_result_array = mysql_fetch_row($query_result);

// Get associative keys only
$query_result_array = mysql_fetch_assoc($query_result);</code>
Copier après la connexion

En utilisant ces options, vous pouvez éviter les données dupliquées dans votre boucle foreach et vous assurer que le tableau résultant contient les index et les valeurs dont vous avez besoin.

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!