方法1(需自行调整根目录):

define('BASE_PATH',str_replace('\\','/',realpath(dirname(__FILE__).'/'))."/");

echo BASE_PATH;

 

方法2(需修改/../自行调整根目录):

defined('BASE_PATH') || define('BASE_PATH', getenv('BASE_PATH') ?: realpath(dirname(__FILE__) . '/../'));

echo BASE_PATH;

方法3(推荐使用):

怎样取得站点根目录,一步一步来:

我的站点目录据对路径:D:\www\message2011,测试文件路径:D:\www\message2011\include\config.inc.php

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

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

D:\www\message2011\include\config.inc.php

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

D:\www\message2011\include

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

D:\www\message2011

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

D:/www/message2011

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

echo str_replace( '\\' , '/' , realpath(dirname(__FILE__).'/../'));