laravel框架response->json获取的json数据转换为数组

本文探讨了response->json()方法在PHP中用于生成JSON格式响应的用途及限制。特别指出该方法生成的数据结构由于其特殊格式(如data属性受保护),无法直接通过json_decode()转换为数组。建议直接使用json_encode()来避免此类问题。

如果获得一个json变量$json是通过response->json($data); 获取的,想用json_decode转换成数组格式可以吗?

此时的$json变量是一个对象,而它的值在对象的data属性里面,但是,不能直接dd($json->data)的值,因为$json对象的data属性的值是protected受保护的,所以不能通过json_decode($json->data)直接将json数据转换为数组。

其实,有点多余,为什么不直接用json_encode将数组转换为json格式,而去调用response->json()方法呢?


结论:response->json()转换为json格式只用于ajax请求。且用这个方法转换的json数据,不能用json_decode()获取。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值