craftx27
craftx27

Reputation: 39

Format JsonArray php

i would like to format it this way but i am unable to at the moment it looks like this:

    {"success":true,"user":"tom","gender":"male","age":"2"}
{"success":true,"user":"anna","gender":"female","age":"3"}

but it should look like this

  {
      "result":[ 
                 {"success":true,"user":"tom","gender":"male"},
                 {"success":true,"user":"anna","gender":"female"}
               ]
    }

this is my code

if ($result->num_rows > 0)
  {
    while($row = $result->fetch_assoc())
     {
       $user= $row["user"];
       $gender= $row["gender"];

       $response["user"] = $user;
       $response["gender"] = $gender;
       $response["success"] = true;

       echo json_encode($response); 

     }
   }

Upvotes: 1

Views: 42

Answers (1)

Enstage
Enstage

Reputation: 2126

if ($result->num_rows > 0)
  {
    while($row = $result->fetch_assoc())
     {
       $user= $row["user"];
       $gender= $row["gender"];

       $response['result'][] = [
           'user' => $user,
           'gender' => $gender,
           'success' => true
       ];

     }
     echo json_encode($response);
   }

You were formatting it on each loop, which will output entirely separate sets of JSON.

Upvotes: 1

Related Questions