$_POST 與 php教程://input可以取到值,$HTTP_RAW_POST_DATA 為空白
$_POST 以關聯陣列方式組織提交的資料,並對此進行編碼處理,如urldecode,甚至編碼轉換
php://input 也可以實現此這個功能可以獲得POST的未經處理資料。
代碼
echo file_get_contents( "php://input ");
執行個體
<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://input 允許讀取 POST 的未經處理資料。和 $HTTP_RAW_POST_DATA 比起來,它給記憶體帶來的壓力較小,並且不需要任何特殊的 php.ini 設定。php://input 不能用於 enctype="multipart/form-data"。
php $_POST
$_POST 變數是一個數組,內容是由 HTTP POST 方法發送的變數名稱和值。
$_POST 變數用於收集來自 method="post" 的表單中的值。從帶有 POST 方法的表單發送的資訊,對任何人都是不可見的(不會顯示在瀏覽器的地址欄),並且對發送資訊的量也沒有限制。
html
<form action="welcome.php" method="post">
Enter your name: <input type="text" name="name" />
Enter your age: <input type="text" name="age" />
<input type="submit" />
</form>
welcome.php
Welcome <?php echo $_POST["name"]; ?>.<br />
You are <?php echo $_POST["age"]; ?> years old!
通過 HTTP POST 發送的變數不會顯示在 URL 中。
變數沒有長度限制