Maison > base de données > tutoriel mysql > Pourquoi ma déclaration préparée par PDO Fetch() renvoie-t-elle des résultats doubles ?

Pourquoi ma déclaration préparée par PDO Fetch() renvoie-t-elle des résultats doubles ?

Barbara Streisand
Libérer: 2024-11-03 02:43:30
original
682 Les gens l'ont consulté

Why Does My PDO Prepared Statement Fetch() Return Double Results?

L'instruction préparée PDO Fetch() renvoie des résultats doubles

Lors de l'utilisation d'instructions préparées PDO, les résultats obtenus à partir de la méthode fetch() peuvent parfois semblent être dupliqués. Cela se produit lorsque les données souhaitées sont récupérées deux fois par ligne, ce qui entraîne deux fois le nombre de colonnes attendu dans la sortie.

Ce problème se produit lors de la récupération des données à l'aide du mode PDO::FETCH_BOTH par défaut, qui récupère les résultats. indexé à la fois par nom de colonne et par numéro de colonne. Pour éviter cette duplication, spécifiez un autre style de récupération, tel que :

  • PDO::FETCH_ASSOC: Renvoie un tableau indexé par nom de colonne, évitant la duplication provoquée par le numéro de colonne. index.
  • PDO::FETCH_NUM: Renvoie un tableau indexé par numéro de colonne, éliminant ainsi le besoin d'indexation du nom de colonne.

En utilisant l'une ou l'autre de ces méthodes, récupérez modes, vous pouvez récupérer le nombre correct de colonnes pour chaque ligne, garantissant que le résultat s'affiche comme prévu.

Voici un exemple d'utilisation de PDO::FETCH_ASSOC :

while ($rows_get_rows = $result_get_rows->fetch(PDO::FETCH_ASSOC)) {
    $csv .= '"' . join('","', str_replace('"', '""', $rows_get_rows)) . "\"\n";
}
Copier après la connexion

Ce code récupérera les données sous forme de tableau associatif, éliminant les colonnes en double.

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