Getting the full address of the current page in PHP requires a combination of various functions and references, including domain name or host address, web page address, URL parameters, user agent, port number, etc.
Understanding based on functions
PHP implementation:
The code is as follows
代码如下 |
复制代码 |
//获取域名或主机地址
echo $_SERVER['HTTP_HOST']." "; #localhost
//获取网页地址
echo $_SERVER['PHP_SELF']." "; #/blog/testurl.php
//获取网址参数
echo $_SERVER["QUERY_STRING"]." "; #id=5
//获取用户代理
echo $_SERVER['HTTP_REFERER']." ";
//获取完整的url
echo 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];
echo 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'].'?'.$_SERVER['QUERY_STRING'];
#http://localhost/blog/testurl.php?id=5
//包含端口号的完整url
echo 'http://'.$_SERVER['SERVER_NAME'].':'.$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"];
#http://localhost:80/blog/testurl.php?id=5
//只取路径
$url='http://'.$_SERVER['SERVER_NAME'].$_SERVER["REQUEST_URI"];
echo dirname($url);
|
|
Copy code
|
代码如下 |
复制代码 |
/**
* 获取当前页面地址
*
* @author bKjia.c0m
*/
function getPageUrl() {
$pageURL = 'http';
if ($_SERVER["HTTPS"] == "on") {
$pageURL .= "s";
}
$pageURL .= "://";
if ($_SERVER["SERVER_PORT"] != "80") {
$pageURL .= $_SERVER["SERVER_NAME"] . ":" . $_SERVER["SERVER_PORT"] . $_SERVER["REQUEST_URI"];
} else {
$pageURL .= $_SERVER["SERVER_NAME"] . $_SERVER["REQUEST_URI"];
}
return $pageURL;
}
|
//Get the domain name or host address |
echo $_SERVER['HTTP_HOST']."
"; #localhost
//Get the web address
echo $_SERVER['PHP_SELF']."
"; #/blog/testurl.php
//Get URL parameters
echo $_SERVER["QUERY_STRING"]."
"; #id=5
//Get user agent
echo $_SERVER['HTTP_REFERER']."
";
//Get the complete url
echo 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];
echo 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'].'?'.$_SERVER['QUERY_STRING'];
#http://localhost/blog/testurl.php?id=5
//Complete url including port number
echo 'http://'.$_SERVER['SERVER_NAME'].':'.$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"];
#http://localhost:80/blog/testurl.php?id=5
//Get only the path
echo dirname($url);
Example
The code is as follows
|
Copy code
|
/**
* Get the current page address
*
* @author bKjia.c0m
*/
function getPageUrl() {
$pageURL = 'http';
if ($_SERVER["HTTPS"] == "on") {
$pageURL .= "s";
}
$pageURL .= "://";
if ($_SERVER["SERVER_PORT"] != "80") {
$pageURL .= $_SERVER["SERVER_NAME"] . ":" . $_SERVER["SERVER_PORT"] . $_SERVER["REQUEST_URI"];
} else {
$pageURL .= $_SERVER["SERVER_NAME"] . $_SERVER["REQUEST_URI"];
}
return $pageURL;
}
http://www.bkjia.com/PHPjc/628665.htmlwww.bkjia.comtruehttp: //www.bkjia.com/PHPjc/628665.htmlTechArticleGetting the full address of the current page in php requires a combination of various functions and references, including domain name or host Address web page address URL parameters user agent port number, etc. Based on the letter...
|