PHP数据集构建JSON格式及新数组的方法

yipeiwu_com6年前PHP代码库
自己写了个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;
}

相关文章

浅谈php字符串反转 面试中经常遇到

1.单字节字符串反转 php提供了用于字符串反转的函数strrev() $str = 'abcdef'; echo strrev($str); 2.对于包含中文的多字节字符串需要用...

PHP模拟QQ登录的方法

本文实例讲述了PHP模拟QQ登录的方法。分享给大家供大家参考。具体实现方法如下: 原理是用curl模拟发送post登录,cookie保存本地 这样理论上可以支持永久单挂QQ <...

PHP数组排序函数合集 以及它们之间的联系分析

下边提到的几个数组函数的排序有一些共性:1 数组被作为排序函数的参数,排序以后,数组本身就发生了改变,函数的返回值为bool类型。2 函数名中出现单a表示association,含义为,...

php实现插入排序

<?php /** * 插入排序 * @param Array $a 无序集合 * @return Array 有序集合 */ function insertS...

php curl 模拟登录并获取数据实例详解

PHP的curl()在抓取网页的效率方面是比较高的,而且支持多线程,而file_get_contents()效率就要稍低些,当然,使用curl时需要开启下curl扩展。 代码实战 先来看...