将多个值放入json_encode

时间:2014-12-07 21:41:58

标签: php

我正在使用一个包含多个SQL查询的数组,然后使用foreach循环来运行查询:

foreach($sql as $query) {
    $rs=mysql_query($query, $conn);
    if(mysql_num_rows($rs) > 0){
        while($result=mysql_fetch_assoc($rs)) {
            $json_arr["id"] = $result['sequence'];
            $json_arr["value"] = $result['company'];
            $json_arr["label"] = $result['company'];
            array_push($display_json, $json_arr);
        }
    } else {
        $json_arr["id"] = "#";
        $json_arr["value"] = "";
        $json_arr["label"] = "No Result Found!";
        array_push($display_json, $json_arr);
    }
}
然后我需要使用json_encode并打印结果,如:

$jsonWrite = json_encode($display_json); //encode that search data
print $jsonWrite;

如何为所有查询结果执行一个json_encode

1 个答案:

答案 0 :(得分:1)

foreach($sql as $query) {
    $rs=mysql_query($query, $conn);
    if(mysql_num_rows($rs) > 0){
        while($result=mysql_fetch_assoc($rs)) {
            $json_arr["id"] = $result['sequence'];
            $json_arr["value"] = $result['company'];
            $json_arr["label"] = $result['company'];

        }
        array_push($display_json, $json_arr);
    } else {
        $json_arr["id"] = "#";
        $json_arr["value"] = "";
        $json_arr["label"] = "No Result Found!";
        array_push($display_json, $json_arr);
    }
}

将第一个array_push移动到while循环之外,如上所述,将阻止你看到的重复。