1. 程式人生 > >PHP獲取Post的原始資料方法小結

PHP獲取Post的原始資料方法小結

From : 

一般我們都用$_POST或$_REQUEST兩個預定義變數來接收POST提交的資料。但如果提交的資料沒有變數名,而是直接的字串,則需要使用其他的方式來接收。

方法一: 使用全域性變數$GLOBALS['HTTP_RAW_POST_DATA']來獲取。

      在$GLOBALS['HTTP_RAW_POST_DATA']存放的是POST過來的原始資料。而$_POST或$_REQUEST存放的是PHP以key=>value的形式格式化以後的資料。 但$GLOBALS['HTTP_RAW_POST_DATA']中是否儲存POST過來的資料取決於centent-Type的設定,即POST資料時必須顯式示指明Content-Type: application/x-www-form-urlencoded,POST的資料才會存放到 $GLOBALS['HTTP_RAW_POST_DATA']中。

方法二: 使用file_get_contents("php://input")來獲取。

     對於未指定 Content-Type 的POST資料,則可以使用file_get_contents("php://input");來獲取原始資料。事實上,用PHP接收POST的任何資料都可以使用本方法。而不用考慮Content-Type,包括二進位制檔案流也可以。 所以用方法二是最保險的方法。

 

https://www.cnblogs.com/fullhouse/archive/2012/04/24/2468870.html