0
我有两个表名是渠道和部门。如何在php中使用多个数组创建json编码?
$result = mysql_query("SELECT * FROM channels");
while($json = mysql_fetch_assoc($result)){
$fetch = mysql_query("SELECT * FROM departments where channelid='".$json['id']."'");
$json2 = array();
while ($row = mysql_fetch_array($fetch)){
$json2[] = array('departmentname' => $row["departmentname"],'departmentid' => $row["did"]
);
}
$json['department'] = $json2;
echo json_encode($json);
}
输出继电器:
{
"id": "1",
"channelname": "con",
"channelurl": "http:\/\/xxx.net\/YY\/",
"department": [
{
"departmentname": "xxx Travel",
"departmentid": "1"
},
{
"departmentname": "xxxx Virtual Assist",
"departmentid": "2"
},
"departmentname": "xxx Premier",
"departmentid": "3"
},
{
"departmentname": "xxxx Events",
"departmentid": "4"
}
]
}{
"id": "2",
"channelname": "Slim",
"channelurl": "http:\/\/xxxxx.net\/slim\/",
"department": [
{
"departmentname": "Virtualvideo",
"departmentid": "5"
}
]
}
预期结果:
[
{
"id": "1",
"channelname": "xxxxx",
"channelurl": "http://XXXXX.net/yyy/",
"department": [
{
"departmentname": "XXX Travel",
"departmentid": "1"
},
{
"departmentname": "XXXX Virtual Assist",
"departmentid": "2"
},
{
"departmentname": "XXXX Premier",
"departmentid": "3"
},
{
"departmentname": "XXXX Events",
"departmentid": "4"
}
]
},
{
"id": "2",
"channelname": "Slim",
"channelurl": "http://XXXXXX.net/slim/",
"department": [
{
"departmentname": "Virtual video",
"departmentid": "5"
}
]
}
]
你澄清随e输出结果的差异预期的一个? – revo
可能的重复:http://stackoverflow.com/questions/13205877/php-multidimensional-array-to-json – NewInTheBusiness
看看父对象的第二个数组。 –