从PHP Query获取特定格式的JSON


Get specific formatted JSON from PHP Query

我想得到这样的数组:

{
    "version": "1397992135_1932",
    "list": {
        "20514072":["John Carter","FiExJGIpsek.jpg",1],
        "7247045":["Joe Satriani","KzvE54Z4rlA.jpg",0],
        "91120813":["Mikel Arteta","JnPwkLKGeCA.jpg",1]
    }
}

在数据库中,我有简单的行:

id | name | photo | vip

如何将查询结果格式化为我想要的格式?

更新

如果我有100条记录,我真的不知道如何编写代码来从DB中获取数据。

这将是实现您要查找的JSON字符串所需的数组设置:

$data = array(
        "version" => "1397992135_1932",
        "list" =>
    array(
        "20514072" => array(
        "John Carter",
        "iExJGIpsek.jpg",
         "1"
         ),
        "7247045" => array(
        "Joe Satriani",
        "KzvE54Z4rlA.jpg",
        "0"
        ),
        "91120813" => array(
        "Mikel Arteta",
        "JnPwkLKGeCA.jpg",
        "1"
    ))
);
echo "<pre>";   
echo json_encode($data);
echo "</pre>";
?>

输出:

{
    "version":"1397992135_1932",
    "list":{
        "20514072":["John Carter","iExJGIpsek.jpg","1"],
        "7247045":["Joe Satriani","KzvE54Z4rlA.jpg","0"],
        "91120813":["Mikel Arteta","JnPwkLKGeCA.jpg","1"]
    }
}

好的,我找到了动态数组的解决方案=)

$list = array();
while ($row = $result->fetch_array()) {
    $list[$row['id']] = array($name,$photo,$vip);
}