上午在做一个需求时,需要利用 php 在后端获取页面的完整地址,以前不少做这样的需求所以记录了一些常用到的函数,就发表一下。有需要的拿去吧!

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

示例1

<?php
function getpageurl() {$pageURL = 'http';if(isset($_SERVER['HTTPS']) && $_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;
}
?>

调用方法:

<?php
echo getpageurl();
?>

注意:

1、$_SERVER['HTTPS'] 变量在 HTTPS 链接的情况下, 一些个别的服务器环境中会返回 null,要特别注意一下 (以后会单独的出一篇博文讲一下)

2、上面的函数会返回完整的url地址,包括提交的参数。

示例2:

<?php
function get_url() {$sys_protocal = isset($_SERVER['SERVER_PORT']) && $_SERVER['SERVER_PORT'] == '443' ? 'https://' : 'http://';$php_self = $_SERVER['PHP_SELF'] ? $_SERVER['PHP_SELF'] : $_SERVER['SCRIPT_NAME'];$path_info = isset($_SERVER['PATH_INFO']) ? $_SERVER['PATH_INFO'] : '';$relate_url = isset($_SERVER['REQUEST_URI']) ? $_SERVER['REQUEST_URI'] : $php_self.(isset($_SERVER['QUERY_STRING']) ? '?'.$_SERVER['QUERY_STRING'] : $path_info);return $sys_protocal.(isset($_SERVER['HTTP_HOST']) ? $_SERVER['HTTP_HOST'] : '').$relate_url;
}
?>

php 获取当前页面的url地址不包括参数的方法教程

上面给出两个关于php获取页面完整url地址的函数,会将url中提交的参数也一并获取到,如果我们只单单的获取一个地址而不需要参数的话,可以参考下面的示例!

示例代码:

<?php
function getpageurl_t() {$pageURL = 'http';if(isset($_SERVER['HTTPS']) && $_SERVER["HTTPS"] == "on"){$pageURL .= "s";}$pageURL .= "://";$this_page = $_SERVER["REQUEST_URI"];//过滤要提交的参数if(strpos($this_page, "?") !== false){$this_pages = explode("?", $this_page);$this_page = reset($this_pages);}if ($_SERVER["SERVER_PORT"] != "80") {$pageURL .= $_SERVER["SERVER_NAME"] . ":" . $_SERVER["SERVER_PORT"] . $this_page;}else{$pageURL .= $_SERVER["SERVER_NAME"] . $this_page;}return $pageURL;
}
?>

函数调用:

<?php
echo getpageurl_t() ;
?>

php中其它关于获取url地址的操作方法

你可以参考下面 php 中关于对url地址的一些操作方法来实现自己的需求!

<?php
//测试网址:   http://localhost/blog/ss.php?id=10
//获取域名或主机地址
echo $_SERVER['HTTP_HOST']."<br>"; // localhost
//获取网页地址
echo $_SERVER['PHP_SELF']."<br>"; // blog/ss.php//获取网址参数
echo $_SERVER["QUERY_STRING"]."<br>"; // id=10//获取用户代理
echo $_SERVER['HTTP_REFERER']."<br>";//获取完整的url
echo 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];
echo 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'].'?'.$_SERVER['QUERY_STRING'];
// http://localhost/blog/ss.php?id=10//包含端口号的完整url
echo 'http://'.$_SERVER['SERVER_NAME'].':'.$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"];
// http://localhost:80/blog/ss.php?id=10//只取路径
$url='http://'.$_SERVER['SERVER_NAME'].$_SERVER["REQUEST_URI"];
echo dirname($url);
// http://localhost/blog
?>

php获取当前页完整url地址的方法教程相关推荐

  1. JS - 获取当前页面的 url地址 及 相关信息

    JS - 获取当前页面的 url地址 及 相关信息 一. 获取当前页面的 url地址 二. 获取当前网址url 后的指定参数 一. 获取当前页面的 url地址 window.location 以htt ...

  2. Python+selenium 自动化-获取当前页面的url地址,打开指定的url地址

    非常简单,driver.current_url 就能获取当前页面的 url 地址. # 调用chrome浏览器 driver = webdriver.Chrome() # 打开指定的url地址 dri ...

  3. php获取url地址的方法,PHP获取当前页面完整url地址的方法

    php获取当前页面完整真实的url地址的方法,包括带参数的,总结了三种方法,大家可以根据需要选择,具体函数代码如下: 第一种方法: function GetCurUrl(){if(isset($_SE ...

  4. asp.net获取当前页面的url地址

    设当前页完整地址是:http://www.jb51.net/aaa/bbb.aspx?id=5&name=kelli "http://"是协议名 "www.jb5 ...

  5. Magento获取当前页面URL地址

    Magento获取当前页面URL地址 http://www.sunhaibing.com/?p=1260 在Magento中,可以通过core/url助手类中的getCurrentUrl()方法获取当 ...

  6. php通过$_SERVER获取当前页面完整URL地址

    使用PHP编写程序的时候,我们常常想要获取当前页面的URL.下面提供一个用于获取当前页面URL的函数以及使用方法: 示例一: <?php // 说明:获取完整URLfunction curPag ...

  7. php获取接口url地址,PHP 获取完整URL地址

    /** * 获取当前完整URL * @return string */ function get_url() { $sys_protocal = isset($_SERVER['SERVER_PORT ...

  8. php获取所有url地址_PHP_php 获取完整url地址,主要是获取到地址栏的一些信 - phpStudy...

    php 获取完整url地址 主要是获取到地址栏的一些信息,域名,端口参数等 复制代码 代码如下: //获取域名或主机地址 echo $_SERVER['HTTP_HOST']." " ...

  9. PHP获取当前页面完整URL地址

    示例一: <?php // 说明:获取完整URLfunction curPageURL() {$pageURL = 'http';if ($_SERVER["HTTPS"] ...

最新文章

  1. 在WebStorm里面搜索文件中出现的中文字符
  2. python自己写包_Python将自己写的模块进行打包
  3. 【Xamarin开发 Android 系列 4】 Android 基础知识
  4. 苹果手机at系统_iOS14系统苹果手机如何设置充满电提示音?
  5. java AES加密
  6. 蒙特卡罗方法介绍( 二)
  7. Weblogic 数据源及连接池配置问题Warning! Connectivity to backend database not verified
  8. linux 启动,停止mysql
  9. Intellij IDEA自定义类注释模板
  10. fullcalendar 上下月翻动事件_用期权做事件套利的黄金法则
  11. Java程序员必会!没有返回值的构造函数是怎么完成赋值的?
  12. 组队训练3回放 ——hnqw1214
  13. java B2B2C Springcloud电子商务平台源码 -Feign之源码解析
  14. C++轻量级微服务_微服务的部署
  15. Springboot搭建SSM+JSP的web项目
  16. MYSQL MVCC实现机制
  17. [JNI]开发之旅(4)项目架构介绍
  18. html640设计稿,为什么写移动端的ui给的640设计稿的宽度,在写html的时候要除以2才正好。...
  19. 认识Vue源码 (2)-- 手写类Vue框架:Zue
  20. java js方法_JAVA调用js方法

热门文章

  1. openstack core components use 总结
  2. VC++ 如何让 MessageBox或AfxMessageBox 按钮显示英文或其他语言
  3. JavaScript基础知识点(学习李炎恢视频)
  4. tensorRT推理
  5. STC89C52单片机数码管介绍以及代码示例
  6. navigationbar 背景色
  7. arcgis二次开发动态追踪以及提高
  8. 作业一:按系列罗列Linux的发行版,并描述不同发行版之间的联系与区别。
  9. (八)、管理向基于模型的设计的转变
  10. html模板动画效果图,html5动画模板_使基本HTML模板更上一层楼的动画