在PHP中生成自定义JSON

时间:2017-02-09 12:46:25

标签: php json

我有一个需要在PHP中以json格式编码的数据库查询,我需要以特定格式编码数据。

我想要的格式是

{
    "Car tyre Showroom":{"ABCD":"1234567","CDEF":"90000000","PPPP":"1000000"},
    "Bike tyre Showroom":{"AFGH":"32124235","AAAAA":"9111111111"},
    "Car Driving School":{"AMNB ":"45565778"},
    "Car battery shop":{"PLQA":"4235346456"}
}

但我的格式为

    {
        "Car tyre Showroom":{"PPPP":"1000000"}
    },{
        "Bike tyre Showroom":{"AAAAA":"9111111111"}
    },{
        "Car Driving School":{"AMNB ":"45565778"}
    },{
        "Car battery shop":{"PLQA":"4235346456"}
    }

我的数据库查询是:

 $query = "select S.SpecificCategoryName,A.* from specificcategories S,areaspecificdealers A where A.SpecificCategoryId=S.SpecificCategoryId and A.LocationCode=(Select LocationCode from arealist where LocationName='".$location."')"; 

我用这种方式编码json,

 for($col = 0; $col < count($result); $col++)
{




        $values[$result[$col]['SpecificCategoryName']]= array($result[$col]['ClientName']=>$result[$col]['PhoneNumber']);


}

echo json_encode($ values);

请以上述方式帮助如何编码数据。

1 个答案:

答案 0 :(得分:1)

这应该可以解决问题:

$result=array();    
for($row = 0; $row < count($result); $row++)
    {
           $result[$result[$row]['SpecificCategoryName']]= array($result[$row]['DealerName1']=>$result[$row]['PhoneNumber1']);
    }
echo json_encode($result);