PHP获取当前相对于域名目录的方法


Posted in PHP onJune 26, 2015

本文实例讲述了PHP获取当前相对于域名目录的方法。分享给大家供大家参考。具体如下:

http://127.0.0.1/dev/classd/index.php/download
比如这个地址,我想得到红色区域的地址用于生成站内的链接,名为 baseurl。

用 $_SERVER['SCRIPT_NAME'] 就可以了, $_SERVER['SCRIPT_NAME'] 是当前正在访问的PHP文件的相对路径,只要如下稍作处理:

从$_SERVER['SCRIPT_NAME']中获取目录部分,并且替换dirname函数可能出现的反斜杠问题  

$baseUrl = str_replace('\\','/',dirname($_SERVER['SCRIPT_NAME']));

保证为空时能返回可以使用的正常值 

$baseUrl = empty($baseUrl) ? '/' : '/'.trim($baseUrl,'/').'/';

这样就可以正常获取到 /dev/classd/ 这部分的目录地址了。

顺便看了一下 Zend Framework 的 baseUrl() 函数,结果一看那么一大堆代码就没再继续看了,我就想不通同样的功能他用了一大堆一大堆的代码,从$_SERVER里获取了一堆,然后中间经过两三个类,四五个方法才最终被我们直接调用,除了中间有三行是获取当前的PHP文件以外,其它都是没用和无谓的处理,ZF本身运行的已经够慢的了,这是什么一个意思呢。感兴趣的朋友可以研究一下。

希望本文所述对大家的php程序设计有所帮助。

PHP 相关文章推荐
消息持续发送的完整例子
Oct 09 PHP
php adodb连接mssql解决乱码问题
Jun 12 PHP
php学习之数据类型之间的转换介绍
Jun 09 PHP
php数据库配置文件一般做法分享
Jul 07 PHP
php与java通过socket通信的实现代码
Oct 21 PHP
PHP中require和include路径问题详解
Dec 25 PHP
PHP如何将log信息写入服务器中的log文件
Jul 29 PHP
详解PHP中的状态模式编程
Aug 11 PHP
php爬取天猫和淘宝商品数据
Feb 23 PHP
PHP fopen函数用法实例讲解
Feb 15 PHP
PHP使用Redis实现Session共享的实现示例
May 12 PHP
PHP架构及原理知识点详解
Dec 22 PHP
php通过获取头信息判断图片类型的方法
Jun 26 #PHP
以文件形式缓存php变量的方法
Jun 26 #PHP
PHP批量去除BOM头代码分享
Jun 26 #PHP
PHP多态代码实例
Jun 26 #PHP
PHP微信开发之二维码生成类
Jun 26 #PHP
Thinkphp关闭缓存的方法
Jun 26 #PHP
php获取、检查类名、函数名、方法名的函数方法
Jun 25 #PHP
You might like
打造计数器DIY三步曲(中)
2006/10/09 PHP
php获取bing每日壁纸示例分享
2014/02/25 PHP
php继承中方法重载(覆盖)的应用场合
2015/02/09 PHP
Yii2-GridView 中让关联字段带搜索和排序功能示例
2017/01/21 PHP
php实现通过soap调用.Net的WebService asmx文件
2017/02/27 PHP
PHP中phar包的使用教程
2017/06/14 PHP
Javascript 强制类型转换函数
2009/05/17 Javascript
JavaScript使用过程中需要注意的地方和一些基本语法
2010/08/26 Javascript
JavaScript随机排序(随即出牌)
2010/09/17 Javascript
基于Jquery的仿Windows Aero弹出窗(漂亮的关闭按钮)
2010/09/28 Javascript
jquery插件珍藏(图片局部放大/信息提示框)
2013/01/08 Javascript
从零学JSON之JSON数据结构
2014/05/19 Javascript
JS实现向表格行添加新单元格的方法
2015/03/30 Javascript
基于vuejs+webpack的日期选择插件
2020/05/21 Javascript
Vue.js学习示例分享
2017/02/05 Javascript
angular实现input输入监听的示例
2018/08/31 Javascript
vue 中基于html5 drag drap的拖放效果案例分析
2018/11/01 Javascript
JavaScript继承与聚合实例详解
2019/01/22 Javascript
vue双向绑定数据限制长度的方法
2019/11/04 Javascript
[14:24]Optic Gaming vs PSG LGD BO3
2018/06/07 DOTA
Python学习小技巧之列表项的拼接
2017/05/20 Python
用python实现k近邻算法的示例代码
2018/09/06 Python
简单了解python 邮件模块的使用方法
2019/07/24 Python
基于Python实现扑克牌面试题
2019/12/11 Python
Python实现仿射密码的思路详解
2020/04/23 Python
Python爬取微信小程序通用方法代码实例详解
2020/09/29 Python
Manjaro、pip、conda更换国内源的方法
2020/11/17 Python
匡威德国官网:Converse德国
2019/01/26 全球购物
美德好少年事迹材料
2014/01/19 职场文书
银行贷款承诺书
2014/03/29 职场文书
停车场管理协议书范本
2014/10/08 职场文书
教师党的群众路线教育实践活动学习笔记
2014/11/05 职场文书
护士自荐信怎么写
2015/03/06 职场文书
受欢迎的自荐信,就这么写!
2019/04/19 职场文书
HTML5简单实现添加背景音乐的几种方法
2021/05/12 HTML / CSS
vue-cli3.x配置全局的scss的时候报错问题及解决
2022/04/30 Vue.js