13

我希望能够生成以下格式的 JSON 输出:

{"a":{"ax":1,"abx":2},"b":{"bax":1,"bbx":2},"c":3,"d":4,"e":5}

虽然我发现各自的代码是这样的:

$arr = array('a' => array('ax' => 1, 'abx' => 2), 'b' => array('bax' => 1, 'bbx' => 2), 'c' => 3, 'd' => 4, 'e' => 5);

,我正在努力通过使用来自 SQL 查询的数据来生成此输出。我已经尝试过array_push()array_merge()并且我设法得到的最接近的是:

[{"a":{"ax":1,"abx":2}},{"b":{"bax":1,"bbx":2}}, ....]

我该怎么做?

4

2 回答 2

22

首先,您应该从表中查询所有数据,然后将其移动到数组中。之后,使用该json_encode($array)功能。

将您的数组放在参数中。

然后输出将采用 JSON 格式。

$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);
于 2012-06-05T08:07:14.777 回答
3

将要编码的数据加载到数组中,然后使用json_encode()

json_encode($arr);
于 2012-06-05T00:26:05.253 回答