區別:1、「$_GET」用於收集來自「method="get"」的表單中的值,而「$_POST」用於收集來自「method="post"」的表單中的值;2、「$_GET」的內容都會顯示在URL中,而「$_POST」則不會。
本教學操作環境:windows7系統、PHP7.1版、DELL G3電腦
PHP 預設變數($_GET 和$_POST)
$_GET
$_GET 變數是數組,內容是由HTTP GET 方法發送的變數名稱和值。
$_GET 變數用於收集來自 method="get" 的表單中的值。從帶有 GET 方法的表單發送的訊息,對任何人都是可見的(會顯示在瀏覽器的網址列),並且對發送的信息量也有限制(最多 100 個字元)。
在使用 $_GET 變數時,所有的變數名稱和值都會顯示在 URL 中。所以在發送密碼或其他敏感資訊時,不應該使用這個方法。不過,正因為變數顯示在 URL 中,因此可以在收藏夾中收藏該頁面。在某些情況下,這是很有用的。
同時HTTP GET 方法不適合大型的變數值;值是不能超過 100 個字元的。
$_POST
$_POST 變數是一個數組,內容是由 HTTP POST 方法傳送的變數名稱和值。
$_POST 變數用於收集來自 method="post" 的表單中的值。從帶有 POST 方法的表單發送的訊息,對任何人都是不可見的(不會顯示在瀏覽器的網址列),並且對發送訊息的量也沒有限制。
範例:
<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>
當使用者點擊提交按鈕,URL 不會含有任何表單數據,看上去類似這樣:http://www.php.cn/welcome.php
"welcome.php" 檔案現在可以透過$_POST 變數來取得表單資料了(請注意,表單域的名稱會自動變成$_POST 陣列中的ID 鍵):
Welcome <?php echo $_POST["name"]; ?>.<br /> You are <?php echo $_POST["age"]; ?> years old!
透過HTTP POST發送的變數不會顯示在URL 中變數沒有長度限制。
不過,由於變數不會顯示在 URL 中,所以無法把頁面加入書籤。
推薦學習:《PHP影片教學》
以上是php中預定義數組$_post和$_get的差別是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!