Maison >développement back-end >tutoriel php >Pourquoi toutes les colonnes sont-elles renvoyées sous la forme d'une seule concaténation lors de l'utilisation de mysqli_fetch_array dans une boucle while ?

Pourquoi toutes les colonnes sont-elles renvoyées sous la forme d'une seule concaténation lors de l'utilisation de mysqli_fetch_array dans une boucle while ?

Patricia Arquette
Patricia Arquetteoriginal
2024-11-02 19:47:30929parcourir

Why are all columns returned as a single concatenation when using mysqli_fetch_array in a while loop?

mysqli_fetch_array Problèmes de colonne de boucle While

Lors de l'itération sur une requête MySQL à l'aide de la fonction mysqli_fetch_array, vous pouvez rencontrer un scénario dans lequel toutes les colonnes sont renvoyées comme une simple concaténation plutôt que des éléments séparés.

Pour résoudre ce problème, créez un tableau pour stocker les lignes récupérées de la boucle mysqli_fetch_array :

<code class="php">$posts = array();
while ($row = mysqli_fetch_array($result)) {
    $posts[] = $row;
}</code>

Maintenant, chaque élément du tableau $posts sera un tableau contenant les colonnes individuelles :

<code class="php">$posts[0]['post_id'] // Returns the value of post_id
$posts[0]['post_title'] // Returns the value of post_title</code>

Si vous avez besoin de toutes les valeurs de colonnes sous la forme d'une seule chaîne, vous pouvez y parvenir en utilisant :

<code class="php">$fullRow = $row[0] . $row[1] . $row[2];</code>

Cependant, cela entraînera une chaîne concaténée plutôt que des éléments séparés. Pour un accès individuel à chaque colonne, la solution basée sur les tableaux est recommandée.

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