好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁 > 知識庫 > php使用file_get_contents(‘php://input‘)和$_POST的區別實例對比

php使用file_get_contents(‘php://input‘)和$_POST的區別實例對比

熱門標簽:新河科技智能外呼系統怎么樣 衡水外呼系統平臺 地圖標注平臺怎么給錢注冊 福州人工外呼系統哪家強 常州地圖標注服務商 釘釘打卡地圖標注 百度商鋪地圖標注 注冊400電話申請 安裝電銷外呼系統

本文學習目的:

為什么和第三方平臺對接接口的時候,在接收http請求數據包時,一般都是用file_get_contents("php://input"),而不是用$_POST呢?

file_get_contents:將整個文件讀入一個字符串

在用php寫接口的時候,通常會將請求的數據通過json的形式發送到指定的請求地址處,此時的file_get_contents(‘php://input')主要是用來獲取請求的原始數據。和 $HTTP_RAW_POST_DATA 比起來,php://input給內存帶來的壓力較小,并且不需要任何特殊的 php.ini 設置。

注意兩點:

數據的提交方式應為POSTphp://input 不能用于接收enctype="multipart/form-data"表單提交的數據

1、舉一個簡單示例:

提交表單

form action="" method="POST">
  姓名: input type="text" name="name" value="tom" />br />
  年齡:input type="text" name="age" value="22" />br />
  input type="submit" value="Submit" />
/form>

后端控制器通過file_get_contents(‘php://input'),獲取請求原始數據流

?php
$content = file_get_contents('php://input', 'r'); 
echo $content; 
//輸出name=tomage=22
?>

2、在項目應用中,如攝像頭拍照,上傳保存,就可以用到php://input??蛻舳伺恼蘸螅褕D片流傳送到服務端,服務端使用file_get_getcontents(‘php://input')就能獲取到圖片流。

$_POST

$_POST只能接收Content-Type: application/x-www-form-urlencoded提交的數據,php會將http請求body相應數據填入到數組_POST中,_POST數組中的數據是進行urldecode()解析的結果。除了該Content-Type,還有 multipart/form-data類型的表單數據也可以用$_POST接收。

四種常見的提交數據方式,分別如下:

定義和用法

enctype 屬性規定在發送到服務器之前應該如何對表單數據進行編碼。默認地,表單數據會編碼為 "application/x-www-form-urlencoded"。就是說,在發送到服務器之前,所有字符都會進行編碼(空格轉換為 "+" 加號,特殊符號轉換為 ASCII HEX 值)。

enctype屬性值

Content-Type值 描述
application/x-www-form-urlencoded 在發送前編碼所有字符(默認)
multipart/form-data

不對字符編碼。

在使用包含文件上傳控件的表單時,必須使用該值。

text/plain 空格轉換為 "+" 加號,但不對特殊字符編碼。

text/xml

一種使用 HTTP 作為傳輸協議,XML 作為編碼方式的遠程調用規范。

總結:

1、Coentent-Type僅在取值為application/x-www-data-urlencoded和multipart/form- data兩種情況下,PHP才會將http請求數據包中相應的數據填入全局變量$_POST中。

2、PHP不能識別的Content-Type類型的時候,會將http請求包中相應的數據填入變量$HTTP_RAW_POST_DATA中。

3、只有Coentent-Type為multipart/form-data的時候,PHP才不會將http請求數據包中的相應數據填入php: //input,否則其它情況都會。填入的長度,由Coentent-Length指定。

4、只有Content-Type為application/x-www-data-urlencoded時,php://input數據才跟$_POST數據相一致。

5、如果不能獲取的時候,比如Coentent-Type為text/xml、application/json、soap,請使用 file_get_contents('php://input');

到此這篇關于php使用file_get_contents(‘php://input‘)和$_POST的區別實例對比的文章就介紹到這了,更多相關php使用file_get_contents和$_POST內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • 解決PHP curl或file_get_contents下載圖片損壞或無法打開的問題
  • php中file_get_contents()函數用法實例
  • PHP使用file_get_contents發送http請求功能簡單示例
  • PHP使用fopen與file_get_contents讀取文件實例分享
  • PHP中file_get_contents函數抓取https地址出錯的解決方法(兩種方法)

標簽:唐山 柳州 遼陽 克拉瑪依 白城 鶴崗 鷹潭 六安

巨人網絡通訊聲明:本文標題《php使用file_get_contents(‘php://input‘)和$_POST的區別實例對比》,本文關鍵詞  php,使用,file,get,contents,input,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《php使用file_get_contents(‘php://input‘)和$_POST的區別實例對比》相關的同類信息!
  • 本頁收集關于php使用file_get_contents(‘php://input‘)和$_POST的區別實例對比的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 麻豆精品秘?一区二区三区| 嗯啊揉捏挺进吸吮| 巜农民怕怕乡下妺H D| 亚洲Av天堂台湾一级毛片大全 | 成人做爰高潮视频www| 压在玻璃窗索要| 日本精a在线观看| 男女aa视频| 99香蕉国产精品偷在线观看| 51国产偷自视频区视频| 情挑女主播| 狠狠噜天天噜日日噜视频麻豆 | 黄色一级美女| 国产一区二区三区免费视频| 欧美三曰本三级少妇三99在线观看 | 国产做受???麻豆| 女被男扒开腿狂躁30分钟 | 黄色网站来一个| 日本涩涩动漫| 原神黄漫?18禁动漫网站| 高h小黄文高甜| 伦至怀孕小说| 9色丨PORNY丨人妻| 女人扒开腿让男人捅爽| 又粗又大又爽又长又紧又水| 哦┅┅快┅┅用力啊┅┅村妇| 美女搡BBB又爽又猛又黄www| 娇小的粉嫩XXX极品| 日本丰满护士videoss| 再深点灬舒服灬太大了野外| 国模冰莲丰满啪啪人体| 精品国产品国语在线不卡丶| 男男互吃互摸基基的网站| 极品女神福利视频网| 成人性生交大片免费看A片鸭王| xxxxhd17欧美老师| 成人精品一区二区三区中文字幕| 日本乱码伦视频| 黄色污软件| 国产日韩欧美亚洲| 数风流人物小说|