使用所有参数从$ _GET获取URL

时间:2018-09-27 19:41:15

标签: php url parameters get

欢迎

简单代码:

<?
$parametrs = (isset($_GET['url']) ? $_GET['url'] : '');
echo $parametrs;
?>

在URL的参数中,我已经:

https://scontent-waw1-1.xx.fbcdn.net/v/t1.0-9/12688238_10153608378188197_489584030822190108_n.jpg?_nc_cat=100&_nc_eui2=AeF838NYAK8LUEwdXcefThvdaa0MIWy1XfuIQkSmJMh-zlpCFVHFpQyYJVBUXK79YiASxQE6cyIgTIaGXnSCoWO0YuXTpj9g6N4RoYlJnE5wOw&oh=e0a1aef0f5834746c73991e937fdae23&oe=5C26DFD6

但是脚本只显示了我

https://scontent-waw1-1.xx.fbcdn.net/v/t1.0-9/12688238_10153608378188197_489584030822190108_n.jpg?_nc_cat=100

如何从$ _GET ['url']抓取所有字符串?

谢谢。

2 个答案:

答案 0 :(得分:0)

您只需一次调用就可以将所有参数作为数组获取,就像这样:

print_r($_REQUEST);

答案 1 :(得分:0)

问题是您没有将参数URL编码为原始脚本。因此,&参数中的url=被视为该参数的末尾,而不是该参数的一部分。原始网址应如下所示:

?url=https://scontent-waw1-1.xx.fbcdn.net/v/t1.0-9/12688238_10153608378188197_489584030822190108_n.jpg?_nc_cat=100%26_nc_eui2=AeF838NYAK8LUEwdXcefThvdaa0MIWy1XfuIQkSmJMh-zlpCFVHFpQyYJVBUXK79YiASxQE6cyIgTIaGXnSCoWO0YuXTpj9g6N4RoYlJnE5wOw%26oh=e0a1aef0f5834746c73991e937fdae23%26oe=5C26DFD6

URL中的所有&都已替换为%26

如果要使用PHP创建URL,则可以使用urlencode($url)来执行此操作。如果使用JavaScript创建,请使用encodeURIComponent(url)。如果您使用的是jQuery AJAX,请将所有参数都放在对象中的$.get$.ajax之类的函数中,jQuery会自动正确编码所有内容。