35

我想获取一个 URL 及其参数。例子:

www.someweb.com/somepage.php?id=10

怎么才能得到somepage.php?id=10

我已经尝试过了REQUEST_URIPHP_SELF但它只给了我www.someweb.com/somepage.phpor somepage.php。我想要的只是页面名称及其参数。

4

5 回答 5

70
basename($_SERVER['REQUEST_URI']);

这将返回所有带有页面名称的 URL。(例如:)index.php?id=1&name=rr&class=10

于 2012-11-17T03:10:29.337 回答
26

对于带有协议、服务器名和参数的完整 URL:

 $base_url = ( isset($_SERVER['HTTPS']) && $_SERVER['HTTPS']=='on' ? 'https' : 'http' ) . '://' .  $_SERVER['HTTP_HOST'];
 $url = $base_url . $_SERVER["REQUEST_URI"];
于 2015-11-23T17:29:07.747 回答
8

$_SERVER['PHP_SELF']对于页面名称和$_GET['id']特定参数。

尝试print_r($_GET);打印出所有参数。

为您的要求echo $_SERVER['PHP_SELF']."?id=".$_GET['id'];

返回所有参数echo $_SERVER['PHP_SELF']."?".$_SERVER['QUERY_STRING'];

于 2012-11-17T02:51:04.550 回答
0
function curPageName() {
 return substr($_SERVER["SCRIPT_NAME"],strrpos($_SERVER["SCRIPT_NAME"],"/")+1);
}
echo "The current page is ".curPageName()."?".$_SERVER['QUERY_STRING'];

这将为您获取页面名称,它将获取最后一个斜杠之后的字符串

于 2012-11-17T02:58:43.093 回答
0

这可能是您要查找的内容:php-get-url-query-string。您可以将其与其他建议的$_SERVER参数结合使用。

于 2012-11-17T02:59:58.470 回答