首页 > 科技 >

php接口返回数据 用echo 还是return?(2)

2018-06-11 02:27:41 网络整理 阅读:138 评论:0

刚开始一直在找问题,因为这种写法,已经被验证过很多次是没有问题的,所以就一直没考虑这方面,但是代码几句,于是索性就让php直接返回了一句 return 1,但是结果仍然是验证失败,

php接口返回数据 用echo 还是return?(2)

走到这里,才开始怀疑是return 关键词,没有给前台返回数据造成的问题,于是试着用 echo 关键字输出数据,奇迹出现了,前端出现了验证成功,

php接口返回数据 用echo 还是return?(2)

问题虽然解决了,但是还是没有搞懂其中的原理,于是开始翻阅资料,最终还是找到了一个个人感觉比较满意的答案:

return 作为函数返回值或结束语句,是返回的数据的指针,也就是数据存放的地址,而接口需要返回的是真实的数据,

因为前后端使用的是不同的内存系统,所以无法根据地址找到相应的数据,而echo print sprinf等这些能够在浏览器中打印数据的函数都是基于http协议传输的真是数据,所以在前端是可以获取和判断的.

需要注意的是,在tp框架中,return关键字的确是可以给返回数据的,也就是可以作为接口返回数据关键字的,但是用原生的php是不行的,这应该是tp框架内部做过处理了吧!这里就不在深究了,有兴趣的朋友,可以去看下tp的源码!!

相关文章