Rumah >pembangunan bahagian belakang >masalah PHP >php如何将结果集转json

php如何将结果集转json

藏色散人
藏色散人asal
2020-09-30 09:17:162948semak imbas

php将结果集转json的方法:首先将数据库中的数据存储到一个数组;然后对这个数组进行编码;最后通过“ json_encode”函数进行json编码并打印结果即可。

php如何将结果集转json

推荐:《PHP视频教程

PHP将数据库查询内容转换为JSON格式且显示中文

最近写android,开始写服务器了。最终服务器的语言就先定为PHP,因为以前写过一阵子网页,所以就先用PHP试试水。

那么首先为了实现android前端与服务器交互,那么我们服务器传输的数据就要先变为JSON格式。

那么如何将数据库中的内容查询出来,并且使其转变为JSON格式呢?代码如下:

if(isset($_GET["userid"])){
    $userid=$_GET["userid"];
    echo $userid;
    $sql="select * from user where userid='$userid'";
}
$result=mysqli_query($conn,$sql);
if (!$result) {
    printf("Error: %s\n", mysqli_error($conn));
    exit();
}
 
$jarr = array();
while ($rows=mysqli_fetch_array($result,MYSQL_ASSOC)){
    $count=count($rows);//不能在循环语句中,由于每次删除 row数组长度都减小
    for($i=0;$i<$count;$i++){
        unset($rows[$i]);//删除冗余数据
    }
    array_push($jarr,$rows);
}
print_r($jarr);//查看数组
echo "<br/>";
 
echo &#39;<hr>&#39;;
 
echo &#39;编码后的json字符串:&#39;;
echo $str=json_encode($jarr,JSON_UNESCAPED_UNICODE);//将数组进行json编码
echo &#39;<br>&#39;;
$arr=json_decode($str);//再进行json解码
echo &#39;解码后的数组:&#39;;
print_r($arr);//打印解码后的数组,数据存储在对象数组中
mysqli_close($conn);

其实原理很简单,就是将数据库中的数据存储到一个数组之后,再对这个数组进行编码。但是,我们需要注意的是,如果数据库中有中文,而对其进行JSON编码之后,仍然想使其变为中文。我们需要在 json_encode()中加上一个选项, JSON_UNESCAPED_UNICODE。也就是避免对中文用utf-8编码。上面的代码已经实现。

Atas ialah kandungan terperinci php如何将结果集转json. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn