700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > PHP 接口中echo die和return的区别

PHP 接口中echo die和return的区别

时间:2018-12-05 12:27:26

相关推荐

PHP 接口中echo die和return的区别

一、场景二、比较1、对比 return 和 echo 的区别1)、原文地址2)、区别2、php接口返回数据 用echo 还是return?1)、原文地址2)、内容3、php的echo 和 return的区别1)、原文地址2)、内容三、相关博文

一、场景

PHP编写接口代码

public function test() {/*** TODO...*/$result = ['data' => '返回的数据','message' => '消息提示','code' => 1];$result = json_encode($result, JSON_UNESCAPED_UNICODE);//方式1:return返回//return $result;//方式2:直接die返回//die($result);//方式3:先输出,再die (相当于方式2)echo $result;die();//建议使用方式2,代码清晰不臃肿}

二、比较

1、对比 return 和 echo 的区别

1)、原文地址

php中echo和return的区别

2)、区别

其实也相当于对比 return 和 die(‘string’) 的区别

echo输出字符串到浏览器return终止后面代码的执行并返回一个值PHP用return浏览器和javascript用echo

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

1)、原文地址

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

2)、内容

今天在ci框架中用 return 返回 josn_encode数据 给前台ajax ,前台获取始终为空。(原生php return也为空)改为echo后就可以获取到。本人之前用tp的时候一直用return就能获取到。最终看了别人的一些ci代码 这种情况也是用的echo

return 作为函数返回值或结束语句,是返回的数据的指针,也就是数据存放的地址,而接口需要返回的是真实的数据,因为前后端使用的是不同的内存系统,所以无法根据地址找到相应的数据,而echo print_r var_dump等这些能够在浏览器中打印数据的函数都是基于http协议传输的真是数据,所以在前端是可以获取和判断的.Ajax获取返回值是使用HTTP请求。return不会产生输出(只在server端进行)而echo可以(从server -> brower,http协议)。Ajax请求的url其实就是一个页面,它可以在浏览器显示,而 php中以return返回数据只是在服务器端去返回这些数据。

综上所述,如果ajax 地址是一个PHP return,将不会获取到正确数据。需要注意的是,在tp框架中,return关键字的确是可以给返回数据的,也就是可以作为接口返回数据关键字的,但是用原生的php是不行的,这应该是tp框架内部做过处理了吧!可以去看下tp的源码!

3、php的echo 和 return的区别

1)、原文地址

php的echo 和 return的区别

2)、内容

项目中碰到的问题,本来是想在控制器直接return xml的(xml的(xml的(xml是一段xml格式的代码),但是测试却发现什么都没有输出。换成echo $xml;就成功了,所以特地百度了一下

1、从关键词意思上看: echo 是输出字符串到浏览器return主要是用于函数,返回一个值 2、echo 主要用于:php对浏览器的输出; return主要用于处理函数的返回值 3、在大多数情况下,echo 和return的结果都是一样的。但如果出现函数嵌套或者函数比较多的情况, echo会无效或者发生错误。所以处理函数的返回或者输出还是用return好。 4、比如我项目中碰到的这个问题,因为要在浏览器输出内容,所以用echo比较合适。如果是需要一个可以被其它函数调用的返回值的话,建议还是用return.

三、相关博文

PHP 编写接口并在header中进行简单的校验PHP exit()与die()的区别

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。