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 相关文章推荐
discuz7 phpMysql操作类
Jun 21 PHP
深入探讨PHP中的内存管理问题
Aug 31 PHP
解析csv数据导入mysql的方法
Jul 01 PHP
PHP URL路由类实例
Nov 12 PHP
PHP jQuery表单,带验证具体实现方法
Feb 15 PHP
使用pthreads实现真正的PHP多线程(需PHP5.3以上版本)
May 05 PHP
destoon网站转移服务器后搜索汉字出现乱码的解决方法
Jun 21 PHP
使用PHP similar text计算两个字符串相似度
Nov 06 PHP
php有效防止同一用户多次登录
Nov 19 PHP
joomla组件开发入门教程
May 04 PHP
Yii净化器CHtmlPurifier用法示例(过滤不良代码)
Jul 15 PHP
php连接MSsql server的五种方法总结
Mar 04 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
精通php的十大要点(上)
2009/02/04 PHP
php最简单的删除目录与文件实现方法
2014/11/28 PHP
Ajax中的JSON格式与php传输过程全面解析
2017/11/14 PHP
capacityFixed 基于jquery的类似于新浪微博新消息提示的定位框
2011/05/24 Javascript
js库Modernizr的介绍和使用
2015/05/07 Javascript
使用微信内置浏览器点击下拉框出现页面乱跳转现象(iphone),该怎么办
2016/01/04 Javascript
jQuery计算文本框字数及限制文本框字数的方法
2016/03/01 Javascript
jquery实现手机端单店铺购物车结算删除功能
2017/02/22 Javascript
微信小程序教程系列之新建页面(4)
2017/04/17 Javascript
快速理解 JavaScript 中的 LHS 和 RHS 查询的用法
2017/08/24 Javascript
深入理解ES6 Promise 扩展always方法
2017/09/26 Javascript
JavaScript基于数组实现的栈与队列操作示例
2018/12/22 Javascript
JavaScript 预解析的4种实现方法解析
2019/09/03 Javascript
使用JavaScrip模拟实现仿京东搜索框功能
2019/10/16 Javascript
NUXT SSR初级入门笔记(小结)
2019/12/16 Javascript
在vue中使用Echarts画曲线图的示例
2020/10/03 Javascript
jquery实现图片放大镜效果
2020/12/23 jQuery
[43:33]EG vs Spirit Supermajor 败者组 BO3 第一场 6.4
2018/06/05 DOTA
跟老齐学Python之list和str比较
2014/09/20 Python
Python实现在线音乐播放器
2017/03/03 Python
Python实现PS滤镜的万花筒效果示例
2018/01/23 Python
Python根据指定日期计算后n天,前n天是哪一天的方法
2018/05/29 Python
Tensorflow 训练自己的数据集将数据直接导入到内存
2018/06/19 Python
IntelliJ IDEA安装运行python插件方法
2018/12/10 Python
Python matplotlib以日期为x轴作图代码实例
2019/11/22 Python
numpy ndarray 按条件筛选数组,关联筛选的例子
2019/11/26 Python
idea2020手动安装python插件的实现方法
2020/07/17 Python
Python 开发工具通过 agent 代理使用的方法
2020/09/27 Python
几个MySql的面试题
2013/04/22 面试题
专业实习自我鉴定
2013/10/29 职场文书
工程师岗位职责规定
2014/02/26 职场文书
党员违纪检讨书怎么写
2014/11/01 职场文书
教师外出学习心得体会
2016/01/18 职场文书
高三数学复习备考教学反思
2016/02/18 职场文书
三好学生竞选稿范文
2019/08/21 职场文书
Win10多屏显示如何设置?Win10电脑多屏显示设置操作方法
2022/07/07 数码科技