我正在尝试获取这种格式的json数组:
var js_array = [
["Name1", "Address1", "Url1"],
["Name2", "Address2", "Url2"],
etc...
]
来自MySQL查询。 这是我的数据库:
+---------+-------------+---------+
| Name | Address | URL |
+---------+-------------+---------+
| Name1 | Address1 | Url1 |
| Name2 | Address2 | Url2 |
| Name3 | Address3 | Url3 |
+---------+-------------+---------+
我尝试过这个:
$query = $bdd->query('SELECT Name, Adress, URL FROM festivals');
while ($row = $query->fetch()) {
$array[] = $row['Name'];
$array[] = $row['Adress'];
$array[] = $row['URL'];
}
//Then I return it as an js array that I use later
$js_array = json_encode($array);
结果是:
["Name1", "Address1", "Url1", "Name2", "Address2", "Url2", "Name3", "Address3", "Url3"]
我也尝试过这个:
$query = $bdd->query('SELECT Name, Adress, URL FROM festivals');
while ($row = $query->fetch()) {
$array[] = $row;
}
//Then I return it as an js array that I use later
$js_array = json_encode($array);
哪个返回:
[
{0: "Name1", 2: "Address1", 2: "Url1", Name: "Name1", Address: "Address1", URL: "Url1"},
{0: "Name2", 2: "Address2", 2: "Url2", Name: "Name2", Address: "Address2", URL: "Url2"}
]
有没有办法得到我想要的东西? 谢谢
答案 0 :(得分:0)
您只需要为其中仅包含值的每一行创建一个数组:
$query = $bdd->query('SELECT Name, Adress, URL FROM festivals');
while ($row = $query->fetch()) {
$array[] = array($row['Name'], $row['Adress'], $row['URL']);
}
//Then I return it as an js array that I use later
$js_array = json_encode($array);