Home >Backend Development >PHP Tutorial >Why are all columns returned as a single concatenation when using mysqli_fetch_array in a while loop?

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

Patricia Arquette
Patricia ArquetteOriginal
2024-11-02 19:47:30938browse

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

mysqli_fetch_array While Loop Column Issues

When iterating over a MySQL query using the mysqli_fetch_array function, you may encounter a scenario where all columns are returned as a single concatenation rather than separate elements.

To resolve this, create an array to store the rows retrieved from the mysqli_fetch_array loop:

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

Now, each element of the $posts array will be an array containing the individual columns:

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

If you require all column values as a single string, you can achieve this using:

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

However, this will result in a concatenated string rather than separate elements. For individual access to each column, the array-based solution is recommended.

The above is the detailed content of Why are all columns returned as a single concatenation when using mysqli_fetch_array in a while loop?. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn