亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

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

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

PHP中$GLOBALS['HTTP_RAW_POST_DATA']和$_POST的區別有哪些

發布時間:2021-09-03 09:28:24 來源:億速云 閱讀:128 作者:小新 欄目:開發技術

這篇文章將為大家詳細講解有關PHP中$GLOBALS['HTTP_RAW_POST_DATA']和$_POST的區別有哪些,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

具體如下:

$_POST:通過 HTTP POST 方法傳遞的變量組成的數組。是自動全局變量。
$GLOBALS['HTTP_RAW_POST_DATA'] :總是產生 $HTTP_RAW_POST_DATA 變量包含有原始的 POST 數據。此變量僅在碰到未識別 MIME 類型的數據時產生。$HTTP_RAW_POST_DATA 對于 enctype="multipart/form-data" 表單數據不可用。

也就是說基本上$GLOBALS['HTTP_RAW_POST_DATA'] 和 $_POST是一樣的。
但是如果post過來的數據不是PHP能夠識別的,你可以用 $GLOBALS['HTTP_RAW_POST_DATA']來接收,比如 text/xml 或者 soap 等等。

補充說明:PHP默認識別的數據類型是application/x-www.form-urlencoded標準的數據類型。

這是手冊里寫的:

總是產生變量包含有原始的 POST 數據。否則,此變量僅在碰到未識別 MIME 類型的數據時產生。不過,訪問原始 POST 數據的更好方法是 php://input。$HTTP_RAW_POST_DATA 對于 enctype="multipart/form-data" 表單數據不可用。

問題: $HTTP_RAW_POST_DATA == $_POST 嗎?

照手冊所寫 ,答案應該就為否。
假如不一樣的話,他們的區別是什么呢?

我知道答案了,如下:

The RAW / uninterpreted HTTP POst information can be accessed with:
$GLOBALS['HTTP_RAW_POST_DATA']
This is useful in cases where the post Content-Type is not something PHP understands (such as text/xml).

也就是說,基本上$GLOBALS['HTTP_RAW_POST_DATA'] 和 $_POST是一樣的。但是如果post過來的數據不是PHP能夠識別的,你可以用 $GLOBALS['HTTP_RAW_POST_DATA']來接收,比如 text/xml 或者 soap 等等。

PHP默認識別的數據類型是application/x-www.form-urlencoded標準的數據類型

用Content-Type=text/xml 類型,提交一個xml文檔內容給了php server,要怎么獲得這個POST數據。

The RAW / uninterpreted HTTP POST information can be accessed with: $GLOBALS['HTTP_RAW_POST_DATA'] This is useful in cases where the post Content-Type is not something PHP understands (such as text/xml).

由于PHP默認只識別application/x-www.form-urlencoded標準的數據類型,因此,對型如text/xml的內容無法解析為$_POST數組,故保留原型,交給$GLOBALS['HTTP_RAW_POST_DATA'] 來接收。

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

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

應用:

a.htm:

<form action="post.php" method="post">
<input type="text" name="user">
<input type="password" name="password">
<input type="submit">
</form>

post.php:

<? echo file_get_contents("php://input"); ?>

關于“PHP中$GLOBALS['HTTP_RAW_POST_DATA']和$_POST的區別有哪些”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。

向AI問一下細節

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

php
AI

大化| 瑞金市| 五寨县| 镇雄县| 青河县| 依兰县| 廉江市| 郯城县| 云和县| 涿州市| 稻城县| 菏泽市| 芜湖县| 甘肃省| 军事| 昭觉县| 鄂托克前旗| 宜君县| 上犹县| 崇州市| 天门市| 云阳县| 罗平县| 合阳县| 腾冲县| 施甸县| 南江县| 区。| 邢台市| 乌兰浩特市| 闽侯县| 二连浩特市| 双城市| 贺兰县| 保靖县| 河源市| 谷城县| 深州市| 北海市| 文水县| 天全县|