2011-11-22 145 views
1

我试图创建一个脚本,它将从url(url /?green & red blue)获取所有密钥。我知道我可以使用$ _GET数组,但我不完全理解如何使用它。

我想要的是一个for循环,它按顺序获取所有值,然后对它进行一些操作,例如打印它。

我现在卡在这里,所以如果任何人都可以帮助我进一步它将非常感谢!

+0

还有其他与同一主题相关的问题,例如, http://stackoverflow.com/questions/4171753/how-to-loop-through-a-set-of-get-values-in-php –

回答

7

您可以使用类似:

foreach($_GET as $key => $value){ 
    echo "$key: $value<br />"; 
} 

记住,你应该净化你的用户输入,所以不要在生产环境中使用的代码。

+0

废话,这是比我的建议更好;-) – bos

+0

谢谢!奇迹般有效!现在我也明白了:D –

4
foreach ($_GET as $key => $value){ 
    echo $key.' : '.$value.'<br />'; 
} 
0

只是要指出。 如果你的网址是(url /?绿色&红色&蓝色)

你会得到一个这样的数组。

Array 
    (
     [green] => 
     [red] => 
     [blue] => 
    ) 

您的网址将需要看起来像这样(URL/colora =绿色& colorb =红色& colorc =蓝色?) 所以,你得到:

Array 
    (
     [colora] => green 
     [colorb] => red 
     [colorc] => blue 
    ) 
-1

如果你想,让他们在javascript, 这里是代码片段。

function getUrlVars() 
{ 
    var vars = [], hash; 
    var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&'); 
    for(var i = 0; i < hashes.length; i++) 
    { 
     hash = hashes[i].split('='); 
     vars.push(hash[0]); 
     vars[hash[0]] = hash[1]; 
    } 
    return vars; 
} 

该函数返回一个包含URL参数及其值的数组/对象。

+0

这个问题被标记为PHP,'$ _GET'显然是一个PHP构造。 –