區(qū)別:1、“$_GET”用于收集來(lái)自“method="get"”的表單中的值,而“$_POST”用于收集來(lái)自“method="post"”的表單中的值;2、“$_GET”的內(nèi)容都會(huì)顯示在URL中,而“$_POST”不會(huì)。
本教程操作環(huán)境:windows7系統(tǒng)、PHP7.1版、DELL G3電腦
PHP 預(yù)定義變量($_GET 和$_POST)
$_GET
$_GET 變量是一個(gè)數(shù)組,內(nèi)容是由 HTTP GET 方法發(fā)送的變量名稱(chēng)和值。
$_GET 變量用于收集來(lái)自 method="get" 的表單中的值。從帶有 GET 方法的表單發(fā)送的信息,對(duì)任何人都是可見(jiàn)的(會(huì)顯示在瀏覽器的地址欄),并且對(duì)發(fā)送的信息量也有限制(最多 100 個(gè)字符)。
在使用 $_GET 變量時(shí),所有的變量名和值都會(huì)顯示在 URL 中。所以在發(fā)送密碼或其他敏感信息時(shí),不應(yīng)該使用這個(gè)方法。不過(guò),正因?yàn)樽兞匡@示在 URL 中,因此可以在收藏夾中收藏該頁(yè)面。在某些情況下,這是很有用的。
同時(shí)HTTP GET 方法不適合大型的變量值;值是不能超過(guò) 100 個(gè)字符的。
$_POST
$_POST 變量是一個(gè)數(shù)組,內(nèi)容是由 HTTP POST 方法發(fā)送的變量名稱(chēng)和值。
$_POST 變量用于收集來(lái)自 method="post" 的表單中的值。從帶有 POST 方法的表單發(fā)送的信息,對(duì)任何人都是不可見(jiàn)的(不會(huì)顯示在瀏覽器的地址欄),并且對(duì)發(fā)送信息的量也沒(méi)有限制。
例子:
<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>
當(dāng)用戶點(diǎn)擊提交按鈕,URL 不會(huì)含有任何表單數(shù)據(jù),看上去類(lèi)似這樣:http://www.php.cn/welcome.php
"welcome.php" 文件現(xiàn)在可以通過(guò) $_POST 變量來(lái)獲取表單數(shù)據(jù)了(請(qǐng)注意,表單域的名稱(chēng)會(huì)自動(dòng)成為 $_POST 數(shù)組中的 ID 鍵):
Welcome <?php echo $_POST["name"]; ?>.<br /> You are <?php echo $_POST["age"]; ?> years old!
通過(guò) HTTP POST 發(fā)送的變量不會(huì)顯示在 URL 中變量沒(méi)有長(zhǎng)度限制。
不過(guò),由于變量不顯示在 URL 中,所以無(wú)法把頁(yè)面加入書(shū)簽。
推薦學(xué)習(xí):《PHP視頻教程》