• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    PHP写API输出的时用echo的原因详解

    写php API写的很少,最近才开始接口的写法,在框架里面一直用return,但是在api中retrun就失效了,为什么呢?

    网友给出的答案:

    1.return 一般用于函数或方法的返回。

    echo 才是输出(也就是显示)

    如果你不输出,api有何作用。

    2.return只能在php内部使用

    对外,你要给别人解析,你就理解成输出,用echo

    3.当然是echo了,如果是json最好加上header标识

    ?php
    
    $ret = array(
    
      'name' => 'fdipzone'
    
    );
    
    header('content-type:application/json;charset=utf8');
    
    echo json_encode($ret);?>

    为什么给app写接口时,要用echo 返回 json数据?

    1.给 app写接口时,要用 echo json_encode() 来返回数据,但是PHP自身调用却用 return json_encode();

    rerurn是语言中函数或者方法所代表的值,跟变量一样,储存在内存中。return是给其他代码块一个指针或者引用。

    而服务器与app(客户端)交互时,他们无法读取同一个内存系统,只能通过文本这样的方式来交换信息。

    所以要echo一段文本(json)给客户端。

    php惯用的输出流方式就是echo,如果你钟情于return输出,可以自创一门语言来实现。

    2.我是这么理解的,不管什么程序,你总要输出吧,那怎么输出呢?PHP脚本,也就是用到?php ?> 标记起来的这些,都要靠PHP来解析的,那你要输出肯定要用到echo,die,exit,print_r,

    用return是输出不了的,return就是返回的意思,我(主程序)调方法,方法给我返回结果。

    3.框架本身会对你的函数返回的字符串进行输出,要输出最终都是echo。。只是框架基本都是封装了response对象;echo是输出 只有输出的内容http请求的时候才能获取到

    而php内部调用没有http请求

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

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

    需要注意的是,在tp框架中,return关键字的确是可以给返回数据的,也就是可以作为接口返回数据关键字的,但是用原生的php是不行的,这应该是tp框架内部做过处理了!

    以上就就是本次关于PHP写API输出的时用echo的原因的全部内容,感谢大家的阅读和对脚本之家的支持。

    您可能感兴趣的文章:
    • PHP7 echo和print语句实例用法
    • PHP echo()函数讲解
    • 基于php中echo用逗号和用点号的区别详解
    • php常用字符串输出方法分析(echo,print,printf及sprintf)
    • php编程中echo用逗号和用点号连接的区别
    • PHP Echo字符串的连接格式
    • php中print(),print_r(),echo()的区别详解
    • PHP中echo,print_r与var_dump区别分析
    上一篇:PHP 结合 Boostrap 结合 js 实现学生列表删除编辑及搜索功能
    下一篇:详解php中生成标准uuid(guid)的方法
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    PHP写API输出的时用echo的原因详解 PHP,写,API,输出,的,时用,