I would like to be able to generate a JSON output in the following format:
{"a":{"ax":1,"abx":2},"b":{"bax":1,"bbx":2},"c":3,"d":4,"e":5}
Although I have found that the respective code is this:
$arr = array('a' => array('ax' => 1, 'abx' => 2), 'b' => array('bax' => 1, 'bbx' => 2), 'c' => 3, 'd' => 4, 'e' => 5);
, I'm struggling to generate this output by using data from an SQL query. I have tried array_push() and array_merge() and the closest I have managed to get is this:
[{"a":{"ax":1,"abx":2}},{"b":{"bax":1,"bbx":2}}, ....]
How can I do it?
First you should query all your data from the table and then move it to an array. After this, use the json_encode($array)
function.
Place your array inside the parameters.
Then the output will be in JSON format.
$query = "select * from employees";
$result = mysql_query($query);
while($row = mysql_fetch_array($result))
{
$employee = $row['employee'];
$country = $row['country'];
$employees[] = array('employee'=> $employee, 'country'=> $country);
}
echo $jsonformat = json_encode($employees);