输出多个Json对象
但是如果每个都分别echo json_encode();最后返回的数据是三个json对象,解析起来有问题 请问有什么解决办法吗
最好不要把三个数组拼在一起...
还有如果返回的是json数据的话浏览器应该也是能识别出来,显示出有结构的json数据来的吧?
我这边返回的都是直接显示字符串的形式...
声明是用的
header('Content-type: application/json');
哪里可能出问题了呢?
回复讨论(解决方案)
你需要返回什么样子的json数据?
是统一通过一个方法返回?那你就组合数组,转化为不同的json字符串,如:
echo json_enocde(array('a'=>$a,'b'=>$b,'c'=>$c));
你说有问题“ 但是如果每个都分别echo json_encode();最后返回的数据是三个json对象,解析起来有问题 ”
那是什么 问题呢?
你将返回的值用var json_obj=JSON.parse(返回数据)这样就变成json对象了
对于页面可以作如下控制
function func1(){}
function func2(){}
function func3(){}
$data = array();
$data["func1"] = func1();
$data["func2"] = func2();
$data["func3"] = func3();
echo json_encode($data);
这样应该就能很好的解析了吧
虽然 json 只是一个字符串,但他是有格式的
如果格式不对,就无法解析了
你分别输出 3 个 json 串,到了浏览器就因格式不对,无法解析了
所以要用数组将他们拼装在一起再输出
如果不想用数组,那就合并成一个新的对象,你要的三个数据作为属性,然后一次性Response到客户端就可以啊
谢谢大家的解答 解决方法就是只能把分三次输出的内容一次输出吧 受教了
合并成对象,再解析成JSON,然后在客户端取不同的对象
先把三个数组合拼成一个数组,再json_encode。
都是同一个接口的数据,为什么不拼一起啊
php返回json数据例子
下一篇: MySQL逻辑模块工作配合_MySQL
推荐阅读
-
输出多个Json对象
-
解析map<user,user>key,value都为对象为json
-
PHP PDO 调用存储过程 返回多个集合 和 输出参数 如何获取?
-
基于JSON类型返回的API接口如果做输出校验?
-
javascript - $.ajax传json字符串不行,传json对象就行
-
php扩展中c++单例模式的全局对象实例被生成多个子进程销毁,为啥?该如何解决
-
javascript - php 响应 ajax 的时候,怎么返回 json 对象呢?我这样对吗?
-
理清js中数组与对象的区别-数据类型和Json格式
-
使用谷歌Gson实现Json数据与Java对象、List、Map之间的相互转换笔记
-
Asp.Net Core 轻松学-使用MariaDB/MySql/PostgreSQL和支持多个上下文对象