[英]How to get params from encoded current URL?
编码网址
www.example.com/apps/?bmFtZTE9QUhTRU4mbmFtZTI9TUFFREEmcGVyY2VudD02NQ
解码的URL
www.example.com/apps/?name1=AHSEN&name2=MAEDA&percent=65
现在我想从编码的URL获取参数
ob_start();
$name1 = $_GET['name1'];
您可以使用urldecode函数。
这应该让您开始...
<?php
$query = "my=apples&are=green+and+red";
foreach (explode('&', $query) as $chunk) {
$param = explode("=", $chunk);
if ($param) {
printf("Value for parameter \"%s\" is \"%s\"<br/>\n",
urldecode($param[0]), urldecode($param[1]));
}
}
?>
您可能在某个变量的某处有已解码的url。 如果从中提取查询部分( ?
之后的部分),则可以将该查询字符串提供给函数parse_str 。
如果仅将查询字符串作为参数使用parse_str
,它将自动设置适当的变量。 例如
// whereever you get the query part of your decoded url from
$my_query_string = "name1=AHSEN&name2=MAEDA&percent=65";
// feed it into parse_str
parse_str($my_query_string);
将设置全局变量
$name1
$name2
$percent
但是我建议您使用parse_str
提供的第二个参数,因为它可以为您提供更好的控制。 为此,请为parse_str
提供一个数组作为第二个参数。 然后,该函数会将查询字符串中的变量设置为该数组中的条目,类似于您从$_GET
知道的内容。
// whereever you get the query part of your decoded url from
$my_query_string = "name1=AHSEN&name2=MAEDA&percent=65";
// provide parse_str with the query string *and* an array you want the results in
parse_str($my_query_string, $query_vars);
echo $query_vars['name1']; // should print out "AHSEN"
更新:要分割完整的解码URL,可以使用parse_url 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.