中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

PHP中怎么獲取POST數據

發布時間:2021-06-30 16:31:47 來源:億速云 閱讀:124 作者:Leah 欄目:編程語言

PHP中怎么獲取POST數據,針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。

PHP獲取POST數據有幾種方法

  方法1、最常見的方法是:$_POST['fieldname'];

  說明:只能接收Content-Type:application/x-www-form-urlencoded提交的數據

  解釋:也就是表單POST過來的數據

  方法2、file_get_contents(“php://input”);

  說明:

  允許讀取POST的原始數據。

  和$HTTP_RAW_POST_DATA比起來,它給內存帶來的壓力較小,并且不需要任何特殊的php.ini設置。

  php://input不能用于enctype=”multipart/form-data”。

  解釋:

  對于未指定Content-Type的POST數據,則可以使用file_get_contents(“php://input”);來獲取原始數據。

  事實上,用PHP接收POST的任何數據都可以使用本方法。而不用考慮Content-Type,包括二進制文件流也可以。

  所以用方法二是最保險的方法

  方法3、$GLOBALS['HTTP_RAW_POST_DATA'];

  說明:

  總是產生$HTTP_RAW_POST_DATA變量包含有原始的POST數據。

  此變量僅在碰到未識別MIME類型的數據時產生。

  $HTTP_RAW_POST_DATA對于enctype=”multipart/form-data”表單數據不可用

  假如post過來的數據不是PHP能夠識別的,可以用$GLOBALS['HTTP_RAW_POST_DATA']來接收,

  比如text/xml或者soap等等

  解釋:

  $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']中。

  PHP獲取POST數據代碼是什么

  1、PHP如何獲取POST過來的XML數據和解析XML數據

  比如我們在開發微信企業號時,如何處理用戶回復過來的數據呢?

  文檔:http://qydev.weixin.qq.com/wiki/index.phptitle=%E6%8E%A5%E6%94%B6%E6%99%AE%E9%80%9A%E6%B6%88%E6%81%AF

  首先查閱文檔,可知道:啟用開發模式后,當用戶給應用回復信息時,微信服務端會POST一串XML數據到已驗證的回調URL

  假設該URL為http://www.xxx.com

  Http請求方式:POST

  http://www.xxx.com/msg_signature=ASDFQWEXZCVAQFASDFASDFSS×tamp=13500001234&nonce=123412323

  POST的XML內容為:

  那么怎么接收這段內容呃?

  這時就可以用到:方法2(file_get_contents(“php://input”))、方法3($GLOBALS['HTTP_RAW_POST_DATA'])

  方法2(file_get_contents(“php://input”)):

  $input=file_get_contents("php://input");//接收POST數據

  $xml=simplexml_load_string($input);//提取POST數據為simplexml對象

  var_dump($xml);

  方法3($GLOBALS['HTTP_RAW_POST_DATA'])

  $input=$GLOBALS['HTTP_RAW_POST_DATA'];

  libxml_disable_entity_loader(true);

  $xml=simplexml_load_string($input,'SimpleXMLElement',LIBXML_NOCDATA);

  var_dump($xml);

關于PHP中怎么獲取POST數據問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

屏山县| 曲沃县| 合作市| 昭平县| 霍林郭勒市| 宜章县| 大悟县| 武冈市| 平潭县| 南京市| 隆林| 两当县| 嘉峪关市| 安阳县| 进贤县| 长治市| 康马县| 永修县| 札达县| 合川市| 东至县| 耿马| 惠安县| 琼海市| 新绛县| 安宁市| 台前县| 综艺| 北流市| 铅山县| 南郑县| 鸡西市| 灵璧县| 茌平县| 共和县| 平定县| 平利县| 萨迦县| 潜山县| 云南省| 永新县|