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

Pourquoi mon tableau de récupération MySQLi entraîne-t-il une sortie doublée ?

DDD
Libérer: 2024-10-29 05:35:31
original
1052 Les gens l'ont consulté

Why Does My MySQLi Fetch Array Result in Doubled Output?

Double résultats dans le tableau (MySQLi Fetch Array)

Problème

L'exécution du code suivant :

<code class="php">$table = get_personel_table(1);

function get_personel_table($id) {
    global $connection;
    $query = "SELECT * FROM employees WHERE id=$id ORDER BY id ASC";
    $query_result = mysqli_query($connection, $query);
    confirm_query($query_result);
    $query_result_array = mysqli_fetch_array($query_result);
    return $query_result_array; // returns associative array!
}

foreach($table as $table_var) {
    echo "<td>$table_var</td>";
}</code>
Copier après la connexion

aboutit à sortie doublée, telle que :

1 1   1   1   jordan  jordan  9108121544  9108121544  testEmail   testEmail   testAddress testAddress testCounty  testCounty
Copier après la connexion

Solution

Le comportement par défaut de mysqli_fetch_array est de renvoyer des index associatifs et numériques pour la ligne de résultat. Ceci n’est pas souhaitable dans la situation donnée. Pour limiter les clés renvoyées, vous pouvez utiliser le deuxième paramètre de la fonction :

<code class="php">$query_result_array = mysqli_fetch_array($query_result, MYSQLI_NUM); // numeric keys only
$query_result_array = mysqli_fetch_array($query_result, MYSQLI_ASSOC); // associative keys only</code>
Copier après la connexion

Alternativement, vous pouvez utiliser les fonctions suivantes :

<code class="php">$query_result_array = mysqli_fetch_row($query_result); // numeric keys only
$query_result_array = mysqli_fetch_assoc($query_result); // associative keys only</code>
Copier après la connexion

En utilisant uniquement des touches numériques ou associatives , vous pouvez éliminer la duplication des données dans la sortie.

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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal