国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > PHP > 正文

PHP寫API輸出的時用echo的原因詳解

2024-05-05 00:08:41
字體:
來源:轉載
供稿:網友

寫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的原因的全部內容,感謝大家的閱讀和對VeVb武林網的支持。


注:相關教程知識閱讀請移步到PHP教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 泗阳县| 柳州市| 曲阳县| 阿拉善右旗| 马山县| 泰宁县| 正阳县| 安义县| 彰武县| 钦州市| 河东区| 茶陵县| 龙岩市| 承德市| 阿拉善左旗| 沂南县| 房产| 乌什县| 乌海市| 贵南县| 大理市| 南通市| 徐汇区| 手机| 辉南县| 吴江市| 松阳县| 会宁县| 寻甸| 武清区| 吉隆县| 盐山县| 静乐县| 嘉黎县| 碌曲县| 莱州市| 临高县| 汝阳县| 永泰县| 民勤县| 南澳县|