php将多个参数作为一个参数

时间:2014-09-08 16:38:45

标签: php url get

我略微坚持使用php脚本的get变量。我希望能够通过

接受单个网址
  

$ _ GET [" URL"]

但是我发现如果用户在

中传递这样的网址

https://www.google.co.uk/search?q=PHP&oq=PHP&aqs=chrome..69i57j69i60j69i61j69i60l2j69i59.3094j0j4&sourceid=chrome&es_sm=0&ie=UTF-8

脚本只会读取此内容

https://www.google.co.uk/search?q=PHP

我的问题是,是否有办法阅读整个网址,包括其他获取密钥?

1 个答案:

答案 0 :(得分:1)

问题是您没有正确编码以便在URL中使用。必须对&?等保留字符进行编码,否则它们会变得模棱两可。

使用urlencode()。该网址变为:

https%3A%2F%2Fwww.google.co.uk%2Fsearch%3Fq%3DPHP%26oq%3DPHP%26aqs%3Dchrome..69i57j69i60j69i61j69i60l2j69i59.3094j0j4%26sourceid%3Dchrome%26es_sm%3D0%26ie%3DUTF-8

...然后可以安全地用作查询字符串中的值。