Php URL作为URL';s获取参数-与“有关的问题”&&引用;

Php URL作为URL';s获取参数-与“有关的问题”&&引用;,php,url-encoding,Php,Url Encoding,有一个脚本接收另一个url作为GET参数: script.php?file=http://www.google.com&id=123 script.php?file=http://www.google.com?q=adsf&lang=en&id=123 问题是: 当url本身具有参数时,它将用作脚本的参数,而不是该url的参数: script.php?file=http://www.google.com&id=123 script.php?file=http

有一个脚本接收另一个url作为GET参数:

script.php?file=http://www.google.com&id=123
script.php?file=http://www.google.com?q=adsf&lang=en&id=123
问题是:
当url本身具有参数时,它将用作脚本的参数,而不是该url的参数:

script.php?file=http://www.google.com&id=123
script.php?file=http://www.google.com?q=adsf&lang=en&id=123
URL是
http://www.google.com?q=adsf&lang=en
,但它在
&
之后被切碎,因为它被视为与
script.php
本身相关

对此我能做些什么?

我试图用
%26
替换
&
,但是url被它破坏了。

您需要用

如果您使用的是PHP,请使用(或者如果需要):


您需要使用

如果您使用的是PHP,请使用(或者如果需要):


您需要对作为参数传递给另一个URL(脚本)的整个URL进行URL编码。%26是&的正确编码。在使用之前,请确保在服务器端对其进行解码。您不会说您使用的是哪种语言,但大多数,包括javascript和php都有本机URL编码功能。

您需要对作为参数传递给另一个URL(您的脚本)的整个URL进行URL编码。%26是&的正确编码。在使用之前,请确保在服务器端对其进行解码。您不会说您正在使用哪种语言,但大多数,包括javascript和php,都有本机URL编码功能。

尝试对每个特殊字符进行如下编码:

script.php?file=http%3a%2f%2fwww.google.com%3fq%3dadsf%26lang%3den&id=123
尽管使用
rawurlencode()
可能会更好更容易


另外,请阅读URL编码。

尝试对每个特殊字符进行如下编码:

script.php?file=http%3a%2f%2fwww.google.com%3fq%3dadsf%26lang%3den&id=123
尽管使用
rawurlencode()
可能会更好更容易

另外,请阅读有关URL编码的内容