使用json格式导出数据时如何设置标题?

时间:2014-03-11 08:41:26

标签: php jquery mysql json

我不知道这是否是一个正确的标题。我需要从mysql将一些数据导出为json格式。我有一个表,其中包含id,recommendedData,level,room。我的.php文件有一些代码:

<?php

$DB_HostName = "";
$DB_Name = "";
$DB_User = "";
$DB_Pass = "";
$DB_Table = "";


$con = mysql_connect($DB_HostName,$DB_User,$DB_Pass) or die(mysql_error()); 
mysql_select_db($DB_Name,$con) or die(mysql_error()); 

$query = "SELECT max(id),recommendData,room,level  FROM $DB_Table";

$res = mysql_query($query,$con) or die(mysql_error());

mysql_close($con);

$rows = array();
while ($r = mysql_fetch_assoc($res))
{
    $row[] = $r;
}

    echo json_encode($row);
?>

我上面所做的是从最大ID获取数据。这是json输出:

[ { "level" : "2",
    "max(id)" : "3",
    "recommendData" : "8",
    "room" : "4F"
} ]

如您所见,max(id)与其他数据的数据混合在一起。我要做的就是把max(id)作为这些数据的标题,有点像这样:

{"max(id)" :[ { "level" : "2",
    "recommendData" : "8",
    "room" : "4F"
} ]}

谁能告诉我怎么做?

1 个答案:

答案 0 :(得分:1)

while循环中,您可以手动设置输出数组:

while ($r = mysql_fetch_assoc($res))
{
        $row[$r["max(id)"]] = array(
            "level" => $r["level"],
            "recommendData" => $r["recommendData"],
            "room" => $r["room"]
        );
}

希望这有帮助!