Php 如何从MySQL获取JSON信息
我想问的是,在解析数组时没有问题,但是当涉及到一行信息时,我无法让它工作 对于我的JSON输出:Php 如何从MySQL获取JSON信息,php,mysql,sql,json,Php,Mysql,Sql,Json,我想问的是,在解析数组时没有问题,但是当涉及到一行信息时,我无法让它工作 对于我的JSON输出: $sql3 = mysql_query("SELECT description_fr FROM aboutUni where id = 1" ); $query = mysql_query("SELECT description FROM aboutUni WHERE id = 1"); echo '{"status":"0",'; echo '"about-uni-desc":"'.$quer
$sql3 = mysql_query("SELECT description_fr FROM aboutUni where id = 1" );
$query = mysql_query("SELECT description FROM aboutUni WHERE id = 1");
echo '{"status":"0",';
echo '"about-uni-desc":"'.$query.'",';
echo '"about-uni-desc-fr":"'.$sql3.'",';
echo '"images": [';
结果是查询,sql3变量是
资源id#4和资源id#3
为什么我不能从我不知道的地方得到确切的信息看看php.net上的示例: 这样做:
$sql3 = mysql_query("SELECT description_fr FROM aboutUni where id = 1" );
$query = mysql_query("SELECT description FROM aboutUni WHERE id = 1");
$result1 = mysql_fetch_assoc($sql3);
$result2 = mysql_fetch_assoc($query);
echo '{"status":"0",';
echo '"about-uni-desc":"'.$result1['description_fr'].'",';
echo '"about-uni-desc-fr":"'.$result2['description'].'",';
echo '"images": [';
如果您希望从查询中得到多个结果,则需要迭代结果sql3,如下所示:
while ($row = mysql_fetch_assoc($sql3)) {
echo '"about-uni-desc-fr":"'.$row['description_fr'].'",';
}
建议:
- 使用PDO驱动程序,它以数组的形式直接返回结果,并带有各种 格式
- 使用
返回json响应json\u encode
在执行查询之后,您仍然必须获取结果。您应该使用PDO for SQL:&如上所述,您没有获取结果。阅读PHP手册,所有内容都在那里。还有一个json_encode函数……一旦获取了结果,就使用
json_encode
完成它,编写自己的格式是没有意义的。如果有的话,格式化PHP数组结构,而不是编写自己的JSON。谢谢你,Michael,它工作得很好。正如您提到的,最好使用预先编写的方法:)。你做的那个工作正常。非常感谢您在等待4分钟后按标记回答,我当然会的。
$array = array(
'status' => 0,
'about-uni-desc' => $value,
'about-uni-desc-fr' => $value2
);
echo json_encode($array);