方法1:
由于tp5默认是输出Html输出,所以直接以html页面方式输出响应内容。
返回结果用tp自带json(),而不要用json_encode(),因为json_encode不会修改默认的输出类型,所以接收的数据还是默认的html格式,json_decode(
d
a
t
a
,
t
r
u
e
)
无
法
解
析
,
返
回
的
是
n
u
l
l
。
用
j
s
o
n
(
)
则
会
修
改
默
认
返
回
类
型
d
e
f
a
u
l
t
r
e
t
u
r
n
t
y
p
e
为
j
s
o
n
,
c
u
r
l
接
收
到
的
数
据
才
能
j
s
o
n
d
e
c
o
d
e
(
data,true)无法解析,返回的是null。用json()则会修改默认返回类型default_return_type为json,curl接收到的数据才能json_decode(
data,true)无法解析,返回的是null。用json()则会修改默认返回类型defaultreturntype为json,curl接收到的数据才能jsondecode(data,true),返回的才是数组。
return json($data);
方法2:
修改配置文件config/config.php,设置:
// 默认输出类型
'default_return_type' => 'json',
则访问的输出结果就变成了JSON字符串
tp5输出设置:https://www.kancloud.cn/manual/thinkphp5_1/353994
返回结果也可以json_decode();后得到数组