php获取当前页面完整url
本文发布于 11 年前, 内容可能已经过时或失效!
文章目录
项目开发过程中经常需要用到当前页面完整url和baseUrl等进行url跳转操作.
前面已经讲过: php获取网站基础路径baseUrl的两种方法.
下面说明一下
获取当前页面完整路径的方法:
<?php
function getFullUrl(){
# 解决通用问题
$requestUri = '';
if (isset($_SERVER['REQUEST_URI'])) { #$_SERVER["REQUEST_URI"] 只有 apache 才支持,
$requestUri = $_SERVER['REQUEST_URI'];
} else {
if (isset($_SERVER['argv'])) {
$requestUri = $_SERVER['PHP_SELF'] .'?'. $_SERVER['argv'][0];
} else if(isset($_SERVER['QUERY_STRING'])) {
$requestUri = $_SERVER['PHP_SELF'] .'?'. $_SERVER['QUERY_STRING'];
}
}
// echo $requestUri.'<br />';
$scheme = empty($_SERVER["HTTPS"]) ? '' : ($_SERVER["HTTPS"] == "on") ? "s" : "";
$protocol = strstr(strtolower($_SERVER["SERVER_PROTOCOL"]), "/",true) . $scheme;
$port = ($_SERVER["SERVER_PORT"] == "80") ? "" : (":".$_SERVER["SERVER_PORT"]);
# 获取的完整url
$_fullUrl = $protocol . "://" . $_SERVER['SERVER_NAME'] . $port . $requestUri;
return $_fullUrl;
}
echo getFullUrl();
注: 由于php没有内置的函数.我们需要对url上的参数进行组合,从而实现整个url.