I need to print JSON output in the 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 You,
Because your json has multiple nested arrays you need to iterate over those aswell. So we check if our value is an array if so we use an other 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>
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With