在開發過程中,GET和POST像靈魂一樣,無處不在。$_GET 變量是一個數組,內容是由 HTTP GET 方法發送的變量名稱和值。
$_GET 變量用於收集來自 method="get" 的表單中的值。從帶有 GET 方法的表單發送的信息,對任何人都是可見的(會顯示在浏覽器的地址欄),並且對發送的信息量也有限制(最多 100 個字符)。
在使用 $_GET 變量時,所有的變量名和值都會顯示在 URL 中。所以在發送密碼或其他敏感信息時,不應該使用這個方法。不過,正因為變量顯示在 URL 中,因此可以在收藏夾中收藏該頁面。在某些情況下,這是很有用的。
一般來說,URL會使用&操作符來隔開多個變量,當然你也可以設為其它符號。使用','這個符號為變量分隔符號,這裡我們可以用兩種方法來實現:
1. 修改php.ini
—— ; list of separator(s) used by php to parse input urls into variables. ; default is "&". ; note: every character in this directive is considered as separator! arg_separator.input = ";," ————
2. 自己編寫解釋語法
list($key,$value)=$_get; //將get變量分解出來 $tmp=explode(",",$value); //將數據分出
這個用法的優點在於,別人無法知道您傳遞的值是被誰使用,您自己需要明白各個值的使用。
針對http://www.bkjia.com/test.php?website=bkjia.com這一類的get方法的傳值,其實方法與方法二相同,需要的是將key轉換成value進行分解,我覺得這個方法比上一個方法要好,而且更加方便。
$value = key($_GET); $tmp = explode(",", $value); print_r($tmp);
你應該都已經獲得到這些數據了。
遍歷有多個元素的$_GET變量,可以使用下面的方法:
while( list($key, $value) = each($_GET) ) { echo "Key: $key; Value: $value <br />"; }
也可以使用:
foreach ($_GET as $key => $value) { echo "Key: $key; Value: $value <br />n"; }
關於$_REQUEST 變量,PHP 的 $_REQUEST 變量包含了 $_GET, $_POST 以及 $_COOKIE 的內容。PHP 的 $_REQUEST 變量可用來取得通過 GET 和 POST 方法發送的表單數據的結果。