日期:2014-03-24  浏览次数:20521 次

自PHP4.1.0以后将HTTP_GET_VARS使用GET变量来保存,GET的变量主要来自以下的方法

对服务器以获取资料信息为请求方法的例如,URL,使用FORM的METHOD为GET方式。这样所有的请求变量将通过

URL传递给服务器,服务器根据配置调用相关的解释器来处理这些GET出来的变量。



本文针对URL 的GET方式传值进行讨论

我们都知道URL传值为URL?变量名=变量值

这个方式进行递交请求例如

http://www.bbs.bbc.com?page=1

这样的方法为我们现在所通用

如果变量多了可以使用'&'符号连接变量

例如: http://www.bbs.bbc.com?page=1&title=Welcome%20Sports98

以上方法为浏览器直接将变量转变到相对应的数组中,我们并不需要去过多的了解。下面为我所要讨论的话题


例如:

http://www.bbs.bbc.com?page=1,Welcome%20Sports98,Sports98,300


这个例子说明的是,我们使用','这个符号为变量分隔符号,这里我们可以用两种方法来实现,
一、修改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 = ";,"
????

二、自己编写解释语法

list($key,$value)=$_GET; //将GET变量分解出来
$tmp=explode(",",$value); //将数据分出

这个用法的优点在于,别人无法知道您传递的值是被谁使用,您自己需要明白各个值的使用

++++++++++++++++++++++++++++++++++++++


最后针对
http://www.bbs.bbc.com/index.php?123,123433,234524,34563456,5463,78685,abc,Welcome%20Sports98

这一类的GET方法的传值,其实方法与方法二相同,需要的是将KEY转换成VALUE进行分解,我觉得这个方法比上一个方法要好

而且更加方便.
$value=key($_GET);
$tmp=explode(",",$value);

你应该都已经获得到这些数据了。


以上方法为本人浏览其他站点所看到现象所想到的方法,不知是否正确。对于PHP的默认安装用户都喜欢使用默认的GET传值方式

如果是公司有特定要求的可以考虑使用后面的方法~