zoukankan      html  css  js  c++  java
  • PHP数据集构建JSON及新数组

    自己写了个PHP结果集转换成JSON格式的函数,可以直接调用:

    function RecordToJson($recordset)
        {
            $jstr='[';
            while($rs = $recordset->Fetch())
            {
                //$nick = iconv("GBK",'utf-8',$rs['nick']);/*转换为utf-8编码*/
                //TODO:遍历结果集

                $arr_keys=array_keys($rs);
                $jstr=$jstr.'{';
                for($i=0;$i<count($arr_keys);$i+=2)
                {
                    //数据库编码为gbk,需要转换编码
                    //TODO;iconv("GBK",'utf-8',$rs['nick']);/*转换为utf-8编码*/

                    $key=iconv("GBK",'utf-8',$arr_keys[$i]);//$arr_keys[$i];
                    $value=iconv("GBK",'utf-8',$rs[$arr_keys[$i]]);//$rs[$arr_keys[$i]];
                    $jstr=$jstr.'"'.$key.'":"'.$value.'",';
                }
                $jstr=substr($jstr,0,strlen($jstr)-1);
                $jstr=$jstr.'},';
            }
            $jstr=substr($jstr,0,strlen($jstr)-1);
            $jstr=$jstr.']';
            return $jstr;
        }

    PHP默认的结果集数组有数字索引,下面函数可以去除数字索引,只保留字段索引:

    function RebuilderRecord($recordset)
        {
            $row=0;
            while($rs = $recordset->Fetch())
            {
                //TODO:遍历结果集
                $arr_keys=array_keys($rs);
                for($i=0;$i<count($arr_keys);$i+=2)
                {
                    $newrs[$row][$arr_keys[$i]]=$rs[$arr_keys[$i]];
                }    
                $row++;
            }
            return $newrs;
        }
  • 相关阅读:
    浅析PostgreSQL的 ON CONFLICT 和 upsert:不存在则插入/存在则更新、upsert 介绍、语法及示例
    常见工作场景解决方案开源库推荐:文件上传库
    [转]Go-micro 服务端、客户端简单示例
    micro 与go-micro的区别
    【转】一篇文章说清楚 TDengine 的 FQDN
    【转】LV扩容(lvextend)
    [AWS] Launch configuration vs Launch template
    AcWing 867. 分解质因数
    AcWing 866. 试除法判定质数
    AcWing 861. 二分图的最大匹配
  • 原文地址:https://www.cnblogs.com/GarfieldTom/p/2755704.html
Copyright © 2011-2022 走看看