php中$_POST與php://input的區別執行個體分析_php技巧

來源:互聯網
上載者:User

本文執行個體分析了php中$_POST與php://input的區別。分享給大家供大家參考。具體分析如下:

$_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 中,變數沒有長度限制.

希望本文所述對大家的php程式設計有所協助。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.