如何将mysql数据从php转换为json?
我的问题是从SQL获取数据以动态更新图表 Mysql数据如下:如何将mysql数据从php转换为json?,php,mysql,json,Php,Mysql,Json,我的问题是从SQL获取数据以动态更新图表 Mysql数据如下: id | age 1 | 12 2 | 21 3 | 31 4 | 11 5 | 31 [1,12] , [2,21] , [3,31] , [4,11] , [5,31] [1,12] [2,21] [3,31] [4,11] [5,31] 我想这样回应: id | age 1 | 12 2 | 21 3 | 31 4 | 11 5 | 31 [1,12] , [2,21] , [3,31] , [4,
id | age
1 | 12
2 | 21
3 | 31
4 | 11
5 | 31
[1,12] , [2,21] , [3,31] , [4,11] , [5,31]
[1,12] [2,21] [3,31] [4,11] [5,31]
我想这样回应:
id | age
1 | 12
2 | 21
3 | 31
4 | 11
5 | 31
[1,12] , [2,21] , [3,31] , [4,11] , [5,31]
[1,12] [2,21] [3,31] [4,11] [5,31]
我试过这个:
$sql = "SELECT id, age FROM tes";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
while($row = mysqli_fetch_array($result))
{
$id = $row['id'];
$tes = $row['tes'];
$a = array($id,$tes);
echo json_encode($a, JSON_PRETTY_PRINT);
}
但结果是这样的:
id | age
1 | 12
2 | 21
3 | 31
4 | 11
5 | 31
[1,12] , [2,21] , [3,31] , [4,11] , [5,31]
[1,12] [2,21] [3,31] [4,11] [5,31]
将所有行收集到一个二维数组中,然后将其作为JSON返回
$a = array();
while($row = mysqli_fetch_array($result))
{
$id = $row['id'];
$tes = $row['tes'];
$a[] = array($id,$tes);
}
echo json_encode($a, JSON_PRETTY_PRINT);
您所需的输出不是有效的JSON。这正是你想要的吗?如果你连接JSON字符串,你就不会得到JSON,就像连接JPEG图片不会得到更大的图片一样。