将多个MySQL结果合并到一个JSON编码(PHP)中


Merging several MySQL results into a single JSON encode (PHP)

以下是目前存在的代码:

while($row=mysql_fetch_assoc($count_query_result))
    $output[]=$row;
while($row=mysql_fetch_assoc($average_query_result))
    $output2[]=$row;
while($row=mysql_fetch_assoc($items_query_result))
    $output3[]=$row;
print(json_encode(array($output,$output2,$output3)));
mysql_close();

我的问题:

如何从三个查询结果中的每一个中提取一列,并从中生成一个JSON数组,如下所示:

[{"att1":"data"},{"att2":"data"}

假设:

  • att1来自$count_query_result/$输出
  • att2来自$average_query_result/$output2
  • att3来自$items_query_result/$output3

因此,只编码一个变量,而不是3。

我回答了自己的问题。我必须找到问题的根源。MySQL查询。我已经加入了他们所有人,所以现在只有一个。这为我所需要的创建了一个JSON数组。我相信做这件事是有道理的。。。正确的第一次。

$result = array('att1' => $row['data'],
                'att2' => $row['data']
echo json_encode($result)

其中$row['data']是您希望从每个查询返回的信息