编程语言
首页 > 编程语言> > php-URL作为URL的获取参数-“&”问题

php-URL作为URL的获取参数-“&”问题

作者:互联网

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

script.php?file=http://www.google.com&id=123

问题是:
当url具有参数本身时,它将用作脚本的参数,而不是该url的参数:

script.php?file=http://www.google.com?q=adsf&lang=en&id=123

URL是http://www.google.com?q=adsf\u0026amp;lang=zh_CN,但在&之后被截断了,因为它被视为与script.php本身有关.

我该怎么办?
我厌倦了更换&与&,但url被破坏了.

解决方法:

您需要使用percent-encoding对值进行编码.

如果您使用的是PHP,请使用rawurlencode(如果预期为application/x-www-form-urlencoded,则使用urlencode):

$url = 'http://www.google.com?q=adsf&lang=en';
echo 'script.php?file='.rawurlencode($url);

标签:url-encoding,php
来源: https://codeday.me/bug/20191012/1901923.html