2012-05-21 45 views
8

是否有可能从相同的$ _GET具有不同值的url中检索参数?

www.domain.com/?user=1&user=2

目前无论是第二上市这只能说明,所以如果我echo $_GET['user'],它输出2

我似乎就无法找到这个对SO,所以如果我错过了它,请让我知道。

感谢您的帮助!

+1

看到这个[post](http://stackoverflow.net如果您需要,可以使用$ _SERVER ['QUERY_STRING']'m/questions/353379/how-to-get-multiple-parameters-with-same-name-from-a-url-in-php)。 – deex

回答

8

是的,使用user []作为键。应该管用。 PHP access all $_POST[] variables into an array?

+0

谢谢!就在我找到答案的时候,我检查了一下,你也知道了!我忘了它会和复选框/收音机一样。所以我会使用?用户[] = 1和用户[] = 2。谢谢! –

4

查询字符串被解析到关联数组$_GET中,所以当有重复键时,只有最后一个版本的值出现在地图上。但是,您可以访问原始文件$_SERVER['QUERY_STRING']并自行解析。

如果可能的话,如果您修改代码以避免重复密钥,那我们最好。

0

您可能可以为每个$ _GET使用foreach循环,然后将所有'用户'变量分组到一个数组中,然后访问您需要的任何键值。 0是第一个,1是第二个,依此类推...

4

快速回答是否。

http://localhost/?user=1&user=2 

获取你:

array 
    'user' => string '2' (length=1) 

然而,通过在这样的查询括号:

http://localhost/?user[]=1&user[]=2 

可以检索$ _GET [ '用户']以及与此被退回:

array 
    'user' => 
     array 
      0 => string '1' (length=1) 
      1 => string '2' (length=1) 
相关问题