加入收藏 | 设为首页 | 会员中心 | 我要投稿 汽车网 (https://www.0577qiche.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

PHP基础教程:PHP获取网站根目录 PHP获取网页地址

发布时间:2023-05-24 12:35:25 所属栏目:PHP教程 来源:
导读:这篇文章主要为大家详细介绍了PHP实例教程:PHP获取网站根目录 PHP获取网站文件路径,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,有需要的朋友可以收藏方便以后借鉴。

我们在使用PHP开发网站的时候,经常
这篇文章主要为大家详细介绍了PHP实例教程:PHP获取网站根目录 PHP获取网站文件路径,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,有需要的朋友可以收藏方便以后借鉴。

我们在使用PHP开发网站的时候,经常需要获取网站文件的目录,或者网站所在的根目录:

做过程序开发的朋友或者经常使用过一些CMS系统的朋友应该都比较熟悉,这个一般是网站后台欢迎页面的网站系统空间的介绍。上面的这些我们都可以通过PHP来获取显示,这里我们着重给大家介绍的是PHP获取网站根目录 PHP获取网站文件路径。其他的方面我们以后有机会再抽时间给大家介绍。

大家都知道在PHP中可以简单的用$_SERVER['DOCUMENT_ROOT']来获取根目录,当然也可以使用公共文件定义路径的方式获取:

define('BASE_PATH',str_replace('//','/',realpath(dirname(__FILE__).'/'))."/");echo BASE_PATH;
输出结果:E:/wwwroot/

使用url方式:

$PHP_SELF=$_SERVER['PHP_SELF'];$url='http://'.$_SERVER['HTTP_HOST'].substr($PHP_SELF,0,strrpos($PHP_SELF,'/')+1);echo $url;
输出结果:http://localhost/

例如:要使用PHP取得站点根目录

echo $_SERVER['HTTP_HOST'];//当前请求的 Host: 头部的内容 即域名信信息

echo $_SERVER['PHP_SELF'];//当前正在执行脚本的文件相对网站根目录地址,就算该文件被其他文件引用也可以正确得到地址

echo $_SERVER['SCRIPT_NAME'];//当前正在执行脚本的文件相对网站根目录地址,但当该文件被其他文件引用时,只显示引用文件的相对地址,不显示该被引用脚本的相对地址。

echo $_SERVER['DOCUMENT_ROOT'];//网站相对服务器地址即网站的绝对路径名 #当前运行脚本所在的文档根目录。在服务器配置文件中定义

echo $_SERVER['SCRIPT_FILENAME'];//当前执行脚本的绝对路径名。

方法一:

假设我的站点目录相对路径:D:/www/message2018,测试文件路径:D:/www/message2018/include/config.inc.php

在根目录下新建一个文件,也可以隔一层目录创建,就以上面为例,我要在config.inc.php中取得站点的根目录。

1、取得当前文件的路径:用魔术常量__FILE__。这里的路径包含了文件名,结果如下:

D:/www/message2018/include/config.inc.php

2、去掉上面路径的文件名,得到纯路径:dirname(__FILE__),结果如下:

D:/www/message2018/include

3、返回一层目录到根目录:realpath(dirname(__FILE__).'/../'),结果如下:

D:/www/message2018

4、把向左的”/“转化成向右的”/“:str_replace( '//' , '/' , realpath(dirname(__FILE__).'/../')),结果如下:

D:/www/message2018

到这就是我们想要的站点根目录了,可以根据需求设定第三步返回目录层数,比如:返回2层就是 /../../,那么就会得到 D:/www/,以此类推。

方法二:

在global.inc里定义根目录

define("APP_ROOT",dirname(__FILE__));
在任何PHP文件中可以引用该常量

require_once(APP_ROOT."/inc/head.php");

方法三:

<?php$PHP_SELF=$_SERVER['PHP_SELF'] ? $_SERVER['PHP_SELF'] : $_SERVER['SCRIPT_NAME'];$url='http://'.$_SERVER['HTTP_HOST'].substr($PHP_SELF,0,strrpos($PHP_SELF, '/')+1);echo $url;

方法四:

$basepath=$_SERVER['PHP_SELF'];$basepath=substr($basepath,0,strpos($basepath,"文件夹名称"));echo $basepath;
如:你把文件保存为a.php并路径为:/wjj/wjj1/wjj2/a.php

上面的例子就写成:

$basepath=$_SERVER['PHP_SELF'];$basepath=substr($basepath,0,strpos($basepath,"wjj1"));echo $basepath;

方法五:

$basepath=$_SERVER['PHP_SELF'];preg_match("/(//)?([^//]+)/",$basepath,$wjm);echo $wjm[0];
上面我们就PHP获取网站根目录做一些详细的分析讲解,大概有5种左右的方法能实现我们的日常的需求,大家可以根据自己的需求使用相应的方式方法。

(编辑:汽车网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章