2017-07-08 29 views
-1

我传递简单的查询字符串:与号并不在查询字符串加载 - PHP

index.php?a=orange&apple 

掌握值:

$_GET['a']; 

那只能说明orange值。我试过

$a = urlencode($_GET['a']); 
$rs = urldecode($a); 
echo $rs; // orange; 

但没有工作。在这里找到类似的问题stackoverflow但似乎没有用。我如何获得完整的值orange&apple

+0

比编码与符号其他? –

+0

URL应该是:'index.php?a = orange%26apple' – apokryfos

+0

它显示的只是''''''''''之前没有编码的第一个值。 – RanaHaroon

回答

3

这是因为&使得apple成为GET请求中的另一个值。

这样的 -

/test/demo_form.php?name1=value1&name2=value2 

所以使用'%26'(编码URI组件)代替&这样的 -

index.php?a=orange%26apple 

而且随着$_GET['a'];获得的价值。这应该工作。

+0

谢谢,它的工作原理。 – RanaHaroon

0

您的查询字符串需要以%编码编码与符号(&)百分比编码为%26。你的网址就会像:

index.php?a=orange%26apple 
0

写这样的:

index.php?a=orange&b=apple 

// Values 

$_GET['a']; 
$_GET['b'];