为了获取当前页面的URL, PHP提供了一个超全局变量$ _SERVER。 $ _SERVER是PHP的内置变量, 用于获取当前页面的URL。它是一个超全局变量, 意味着它在所有范围内始终可用。
如果我们想要页面的完整URL, 则需要检查协议(或方案名称), 无论是https还是http。请参见下面的示例:
<?php
if(isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] === 'on')
$url = "https://";
else
$url = "http://";
// Append the host(domain name, ip) to the URL.
$url.= $_SERVER['HTTP_HOST'];
// Append the requested resource location to the URL
$url.= $_SERVER['REQUEST_URI'];
echo $url;
?>
输出
注意:isset()函数在此处用于检查是否启用了HTTPS。它检查变量是否存在。
或者, 我们还可以使用下一个示例中给出的另一种方法来获取当前页面的完整URL。
<?php
$protocol = ((!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] != 'off') || $_SERVER['SERVER_PORT'] == 443) ? "https://" : "http://";
$CurPageURL = $protocol . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];
echo "The URL of current page: ".$CurPageURL;
?>
输出
要仅获取在浏览器中打开的当前页面的名称, 请参见以下示例:
<?php
$curPageName = substr($_SERVER["SCRIPT_NAME"], strrpos($_SERVER["SCRIPT_NAME"], "/")+1);
echo "The current page name is: ".$curPageName;
echo "</br>";
?>
输出
评论前必须登录!
注册