Print JSON output to table - PHP

I need to print the output JSON

in a table

{
  "response_code":200,
  "pnr":"6642876935",
  "train_num":"12792",
  "train_name":"PNBE SC EXP",
  "doj":" 6- 7-2015",
  "from_station":
       {
         "code":"PNBE"
       },
  "to_station":
      {
         "code":"SC"
      },
  "reservation_upto":
      {
         "code":"SC"
       },
  "boarding_point":
       {
          "code":"PNBE"
       },
   "class":"SL",
   "no_of_passengers":"1",
   "chart_prepared":"N",
  "passengers":[
     { 
        "sr":"1",
        "booking_status":"W\/L   43,
        GNWL","current_status":
        "RAC   19"
     }
  ],
  "noms":1,
  "error":null
}

      

Thank,

+3


source to share


2 answers


Since your json has multiple nested arrays, you need to iterate over them as well. Therefore, we check if our value is an array if we use another foreach loop.



<?php
$json = '{"response_code":200,"pnr":"6642876935","train_num":"12792","train_name":"PNBE SC EXP    ","doj":" 6- 7-2015","from_station":{"code":"PNBE"},"to_station":{"code":"SC"},"reservation_upto":{"code":"SC"},"boarding_point":{"code":"PNBE"},"class":"SL","no_of_passengers":"1","chart_prepared":"N","passengers":[{"sr":"1","booking_status":"W\/L   43,GNWL","current_status":"RAC   19"}],"noms":1,"error":null}';
$data = json_decode($json, true);
?>

<table> 
      <tr>
            <td>Key</td>
            <td>Value</td>
            <td>Value</td>
      </tr>
      <?php foreach($data as $key => $value){ 

            if(is_array($value)){
                  foreach($value as $element){  
                        if(is_array($element)){
                              foreach($element as $key2 => $child){?>

                                    <tr>
                                          <td><?php echo $key; ?></td>
                                          <td><?php echo $key2; ?></td>
                                          <td><?php echo $child; ?></td>
                                    </tr>

                  <?php       }
                        } else { ?>

                  <tr>
                        <td><?php echo $key; ?></td>
                        <td><?php echo $element; ?></td>
                        <td></td>
                  </tr>

                  <?php }
                  }

            } else {   ?>

            <tr>
                  <td><?php echo $key; ?></td>
                  <td><?php echo $value; ?></td>
                  <td></td>
            </tr>

      <?php }
      } ?>
</table>

      

+1


source


<?php
$json = '{"response_code":200,"pnr":"6642876935","train_num":"12792","train_name":"PNBE SC EXP    ","doj":" 6- 7-2015","from_station":{"code":"PNBE"},"to_station":{"code":"SC"},"reservation_upto":{"code":"SC"},"boarding_point":{"code":"PNBE"},"class":"SL","no_of_passengers":"1","chart_prepared":"N","passengers":[{"sr":"1","booking_status":"W\/L   43,GNWL","current_status":"RAC   19"}],"noms":1,"error":null}';
$data = json_decode($json, true);
?>
<table>
    <tr>
        <td>Key</td>
        <td>Value</td>
    </tr>
    <?php foreach($data as $key => $value) : ?>
    <tr>
        <td><?= $key; ?></td>
        <td><?= $value; ?></td>
    <?php endforeach; ?>
</table>

      



0


source







All Articles