PHP 獲取 post 中的 json 數據


ext 與 PHP 交互時,ext 把 json 數據 post 給 PHP,但在 PHP里面 $_post 獲取不到,$_REQUEST 也獲取不到,但是通過 firedebug 看到的請求信息確實是把 JSON 數據 post 給了 PHP。

想到以前通過flash將圖片二進制流傳給 PHP,然后使用 $GLOBALS['HTTP_RAW_POST_DATA'] 后正常獲取到數據。

PHP 默認只識別 application/x-www.form-urlencoded 標准的數據類型,因此,對型如 text/xml 或者 soap 或者 application/octet-stream 之類的內容無法解析,如果用 $_POST 數組來接收就會失敗,故保留原型,交給 $GLOBALS['HTTP_RAW_POST_DATA'] 來接收。

另外還有一項 php://input 也可以實現此這個功能

file_get_contents("php://input");

php://input 允許讀取 POST 的原始數據。和 $HTTP_RAW_POST_DATA 比起來,它給內存帶來的壓力較小,並且不需要任何特殊的 php.ini 設置。php://input 不能用於 enctype="multipart/form-data"。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM