输出多个Json对象

zhimwin 2014-12-14 09:26:42
我有三个数组从三个函数里面生成 都要做成Json数据返回
但是如果每个都分别echo json_encode();最后返回的数据是三个json对象,解析起来有问题 请问有什么解决办法吗
最好不要把三个数组拼在一起...
还有如果返回的是json数据的话浏览器应该也是能识别出来,显示出有结构的json数据来的吧?
我这边返回的都是直接显示字符串的形式...
声明是用的
header('Content-type: application/json');

哪里可能出问题了呢?
...全文
399 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
KenChan206 2014-12-17
  • 打赏
  • 举报
回复
智商众筹 2014-12-17
  • 打赏
  • 举报
回复
都是同一个接口的数据,为什么不拼一起啊
傲雪星枫 2014-12-16
  • 打赏
  • 举报
回复
先把三个数组合拼成一个数组,再json_encode。
knife_s 2014-12-16
  • 打赏
  • 举报
回复
合并成对象,再解析成JSON,然后在客户端取不同的对象
zhimwin 2014-12-16
  • 打赏
  • 举报
回复
谢谢大家的解答 解决方法就是只能把分三次输出的内容一次输出吧 受教了
司码君 2014-12-15
  • 打赏
  • 举报
回复
如果不想用数组,那就合并成一个新的对象,你要的三个数据作为属性,然后一次性Response到客户端就可以啊
xuzuning 2014-12-15
  • 打赏
  • 举报
回复
虽然 json 只是一个字符串,但他是有格式的 如果格式不对,就无法解析了 你分别输出 3 个 json 串,到了浏览器就因格式不对,无法解析了 所以要用数组将他们拼装在一起再输出
神经质的盛宴 2014-12-15
  • 打赏
  • 举报
回复
对于页面可以作如下控制 function func1(){} function func2(){} function func3(){} $data = array(); $data["func1"] = func1(); $data["func2"] = func2(); $data["func3"] = func3(); echo json_encode($data); 这样应该就能很好的解析了吧
闪闪放光芒 2014-12-15
  • 打赏
  • 举报
回复
你说有问题“但是如果每个都分别echo json_encode();最后返回的数据是三个json对象,解析起来有问题 ” 那是什么 问题呢? 你将返回的值用var json_obj=JSON.parse(返回数据)这样就变成json对象了
码无边 2014-12-14
  • 打赏
  • 举报
回复
你需要返回什么样子的json数据? 是统一通过一个方法返回?那你就组合数组,转化为不同的json字符串,如: echo json_enocde(array('a'=>$a,'b'=>$b,'c'=>$c));

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧