简明现代魔法 -> PHP服务器脚本 -> 谈谈对$_GET的一些认识

谈谈对$_GET的一些认识

2011-02-21

在开发过程中,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.nowamagic.net/test.php?website=nowamagic.net这一类的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 方法发送的表单数据的结果。

随机文章推荐
网站分类


注:如需转载本文,请注明出处(原文链接),谢谢。更多精彩内容,请进入简明现代魔法首页。

进入新博客
喜欢本文,就分享它吧
给我留言
您的名字:
您的邮件:
您的网站:


 

copyright © 2009 简明现代魔法    学习、分享、进步

power by Gonn 感谢所有关心和支持本站的朋友们