主頁(yè) > 知識(shí)庫(kù) > PHP寫(xiě)API輸出的時(shí)用echo的原因詳解

PHP寫(xiě)API輸出的時(shí)用echo的原因詳解

熱門(mén)標(biāo)簽:余姚電話機(jī)器人 電銷機(jī)器人問(wèn)門(mén)薩維品牌my 外呼系統(tǒng)能給企業(yè)帶來(lái)哪些好處 百度地圖標(biāo)注偏差 咸寧銷售電銷機(jī)器人系統(tǒng) 400電話蘭州申請(qǐng)請(qǐng) 開(kāi)發(fā)地圖標(biāo)注類網(wǎng)站 百度地圖怎樣標(biāo)注圖標(biāo) 廣東廣州在怎么申請(qǐng)400電話

寫(xiě)php API寫(xiě)的很少,最近才開(kāi)始接口的寫(xiě)法,在框架里面一直用return,但是在api中retrun就失效了,為什么呢?

網(wǎng)友給出的答案:

1.return 一般用于函數(shù)或方法的返回。

echo 才是輸出(也就是顯示)

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

2.return只能在php內(nèi)部使用

對(duì)外,你要給別人解析,你就理解成輸出,用echo

3.當(dāng)然是echo了,如果是json最好加上header標(biāo)識(shí)

?php

$ret = array(

  'name' => 'fdipzone'

);

header('content-type:application/json;charset=utf8');

echo json_encode($ret);?>

為什么給app寫(xiě)接口時(shí),要用echo 返回 json數(shù)據(jù)?

1.給 app寫(xiě)接口時(shí),要用 echo json_encode() 來(lái)返回?cái)?shù)據(jù),但是PHP自身調(diào)用卻用 return json_encode();

rerurn是語(yǔ)言中函數(shù)或者方法所代表的值,跟變量一樣,儲(chǔ)存在內(nèi)存中。return是給其他代碼塊一個(gè)指針或者引用。

而服務(wù)器與app(客戶端)交互時(shí),他們無(wú)法讀取同一個(gè)內(nèi)存系統(tǒng),只能通過(guò)文本這樣的方式來(lái)交換信息。

所以要echo一段文本(json)給客戶端。

php慣用的輸出流方式就是echo,如果你鐘情于return輸出,可以自創(chuàng)一門(mén)語(yǔ)言來(lái)實(shí)現(xiàn)。

2.我是這么理解的,不管什么程序,你總要輸出吧,那怎么輸出呢?PHP腳本,也就是用到?php ?> 標(biāo)記起來(lái)的這些,都要靠PHP來(lái)解析的,那你要輸出肯定要用到echo,die,exit,print_r,

用return是輸出不了的,return就是返回的意思,我(主程序)調(diào)方法,方法給我返回結(jié)果。

3.框架本身會(huì)對(duì)你的函數(shù)返回的字符串進(jìn)行輸出,要輸出最終都是echo。。只是框架基本都是封裝了response對(duì)象;echo是輸出 只有輸出的內(nèi)容http請(qǐng)求的時(shí)候才能獲取到

而php內(nèi)部調(diào)用沒(méi)有http請(qǐng)求

return 作為函數(shù)返回值或結(jié)束語(yǔ)句,是返回的數(shù)據(jù)的指針,也就是數(shù)據(jù)存放的地址,而接口需要返回的是真實(shí)的數(shù)據(jù),

因?yàn)榍昂蠖耸褂玫氖遣煌膬?nèi)存系統(tǒng),所以無(wú)法根據(jù)地址找到相應(yīng)的數(shù)據(jù),而echo print sprinf等這些能夠在瀏覽器中打印數(shù)據(jù)的函數(shù)都是基于http協(xié)議傳輸?shù)恼媸菙?shù)據(jù),所以在前端是可以獲取和判斷的.

需要注意的是,在tp框架中,return關(guān)鍵字的確是可以給返回?cái)?shù)據(jù)的,也就是可以作為接口返回?cái)?shù)據(jù)關(guān)鍵字的,但是用原生的php是不行的,這應(yīng)該是tp框架內(nèi)部做過(guò)處理了!

以上就就是本次關(guān)于PHP寫(xiě)API輸出的時(shí)用echo的原因的全部?jī)?nèi)容,感謝大家的閱讀和對(duì)腳本之家的支持。

您可能感興趣的文章:
  • PHP7 echo和print語(yǔ)句實(shí)例用法
  • PHP echo()函數(shù)講解
  • 基于php中echo用逗號(hào)和用點(diǎn)號(hào)的區(qū)別詳解
  • php常用字符串輸出方法分析(echo,print,printf及sprintf)
  • php編程中echo用逗號(hào)和用點(diǎn)號(hào)連接的區(qū)別
  • PHP Echo字符串的連接格式
  • php中print(),print_r(),echo()的區(qū)別詳解
  • PHP中echo,print_r與var_dump區(qū)別分析

標(biāo)簽:巴彥淖爾 臨沂 重慶 十堰 鷹潭 麗江 衡陽(yáng) 銅陵

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《PHP寫(xiě)API輸出的時(shí)用echo的原因詳解》,本文關(guān)鍵詞  PHP,寫(xiě),API,輸出,的,時(shí)用,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《PHP寫(xiě)API輸出的時(shí)用echo的原因詳解》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于PHP寫(xiě)API輸出的時(shí)用echo的原因詳解的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章