php获取当前url地址的方法

100人浏览   2025-02-05 00:25:05

在网站后台设计时,有时候因为项目要求,需要获取当前网页的url地址。php中获取url地址,以url中各个参数的方法有很多,那么接下来就来说一说,php中如何获取url地址,以及url中包含的其它参数的方法。

php 获取当前页面的url地址的方法

测试网址

http://feiniaomy.com/c.php?id=3

php获取当前网页的网址,需要用到超全局变量 $_SERVER,所以我们,先来打印一下。

php代码

<?php
var_dump($_SERVER);
?>

打印结果:

array(34) {
 ["QUERY_STRING"]=>
 string(4) "id=3"
 ["PHP_SELF"]=>
 string(6) "/c.php"
 ["HTTP_HOST"]=>
 string(13) "feiniaomy.com"
 ["SERVER_PORT"]=>
 string(2) "80"
 ["REQUEST_METHOD"]=>
 string(3) "GET"
 ["REQUEST_URI"]=>
 string(11) "/c.php?id=3"
 ["REQUEST_SCHEME"]=>
 string(4) "http"
 .....
}

通过上面的打印结果,可以发现 $_SERVER 超全局变量是一个包含有url地址,url参数,网页的路径等肉容的数组。我们可以像平时操作数组一样,从 $_SERVER 变量中提取所需要的信息

php获取主域名

<?php
echo $_SERVER['HTTP_HOST'];
?>

输出结果:

feiniaomy.com

php获取当前页面的网页地址

<?php
echo $_SERVER['PHP_SELF'];
?>

输出结果:

/c.php

php获取当前页面url的参数

<?php
echo $_SERVER["QUERY_STRING"];
?>

输出结果:

id=3

php获取端口号

<?php
echo $_SERVER["SERVER_PORT"];
?>

输出结果:80

php获取当页网址的完整的url

上面的示例中,介绍了php获取url中的各个参数的方法,下面的示例是获取当前页面的完整的url地址的自定义函数。

函数代码:

<?php
function GetPageUrl(){
 // 判断是否https
 $protocol = ((!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] != 'off') || $_SERVER['SERVER_PORT'] == 443) ? "https://": "http://";
 //组合url
 $url = $protocol . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];
 return $url;
}
?>

函数调用方法:

<?php
echo GetPageUrl();
?>

输出结果:

http://feiniaomy.com/c.php?id=3

相关推荐