正常来说,循环赋值是没问题的,你需要看下,你的sql在数据库中能查出几条结果,
最好数组还是这样定义$arr
=
array();而不是$arr[]
=
array();
简单的测试你数据是否只有一条的方法是在while里边打印个东西
echo
$sql;//打印下你的sql语句,用phpmyadmin执行下看结果
$cnt=1;
while($row
=
$db
->
fetchassoc($result))
{
$cnt++;
echo
$cnt;
}
这个在知道里就有,你还可以再看看:
$list=array("amount"=>$row['amount']);
echo json_encode($list);
稍微改一下你的自定义函数
function my_json_sql($my_sql){$result = mysql_query($my_sql);
//判断执行结果
if($result && mysql_affected_rows()>0){
//先声明一个空数组
$arr=array();
//循环处理结果
while($row = @mysql_fetch_assoc($result)){
$arr[]=$row;
}
return $arr;
}
return false;
}
resultset循环输出的时候自己手工生写拼字符串,
或者把resultset通过某种方式转化成bean(bean集合)再通过一些bean-json 互转工具把java对象转换成json。
>
你好,提问者:
解决日期取年月日两种办法:
一种是在sql查询数据库的时候就把日期的格式转换好;
DATE_FORMAT(start_time,'%Y-%m-%d') starttime一种方法是在你获取数据的时候转换
SimpleDateFormat sdm = new javatextSimpleDateFormat("yyyy-MM-dd");你这样吧,数据取出来后,用StringBuilder 拼一个json 传到前台去吧!
给你个例子:
StringBuilder jsonStrAll = new StringBuilder("["); //定义一个StringBuilderfor(employee c : list){//循环你的list
jsonStrAllappend("{"+ "\""+"catid"+"\""+":"+"\""+cgetCatid()+"\""+","+"\""+"catname"+"\""+":"+"\""+cgetCatname()+",isLeaf:true,expanded:false,"+"loaded:true},"); //把你要拼接的字段放进去
}
String str = jsonStrAllsubstring(0, jsonStrAlllength()-1); //把最后的,(逗号)截取掉
if(!""equals(str)){
str = str+"]"; //加上结尾,json就拼接完了
}
//最后return str ; 就可以了!
新建一个Web项目(或Java项目)
打开项目,在Java中的package鼠标右键,依次 *** 作“New--->Class”,如下图所示:
这时,d出新建Java类窗口,填写以下信息
(1)Source folder:源文件夹
(2)Package:包
(3)Name:类名
勾选下方的主函数和注释
如下图所示:
创建完毕后,看到Java类代码,如下图所示:
导入有关的json jar包,编写List和JSONArray,编写完成后鼠标右键运行应用程序,如下图所示:
以上就是关于怎么将PHP查询的多条数据封装成数组 并且转为json的数据格式全部的内容,包括:怎么将PHP查询的多条数据封装成数组 并且转为json的数据格式、怎么把查询到的mysql结果变成json、php将数据库查询的数据转换为json格式,为什么返回的格式前面有0 1 2 3等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)