Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/254.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何从MySQL获取JSON信息_Php_Mysql_Sql_Json - Fatal编程技术网

Php 如何从MySQL获取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

我想问的是,在解析数组时没有问题,但是当涉及到一行信息时,我无法让它工作

对于我的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":"'.$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\u encode
    返回json响应
$array=array( “状态”=>0, '关于uni desc'=>$value, '关于uni desc fr'=>$value2 ); echo json_编码($array);
在执行查询之后,您仍然必须获取结果。您应该使用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);