在PHP中,相对于www根目录,获取当前运行脚本的 父 目录的最干净方法是什么?假设我有:
$_SERVER['SCRIPT_NAME'] == '/relative/path/to/script/index.php'
要不就:
$something_else == '/relative/path/to/script/'
而且我需要/relative/path/to/正确插入斜线。你有什么建议?优选一个衬里。
/relative/path/to/
编辑
我需要获得一个相对于www根目录的路径,dirname(__FILE__)为我提供文件系统中的绝对路径,这样就无法正常工作。$_SERVER['SCRIPT_NAME']另一方面,从www根目录开始。
dirname(__FILE__)
$_SERVER['SCRIPT_NAME']
如果您的脚本位于,/var/www/dir/index.php则将返回以下内容:
/var/www/dir/index.php
dirname(__FILE__); // /var/www/dir
要么
dirname( dirname(__FILE__) ); // /var/www
这是许多框架中用来确定来自app_root的相对路径的技术。
文件结构:
/ var / 万维网/ index.php subdir / library.php
index.php是我的调度程序/ boostrap文件,所有请求都路由到:
define(ROOT_PATH, dirname(__FILE__) ); // /var/www
library.php是位于额外目录下的某个文件,我需要确定相对于应用程序根目录(/ var / www /)的路径。
$path_current = dirname( __FILE__ ); // /var/www/subdir $path_relative = str_replace(ROOT_PATH, '', $path_current); // /subdir
可能有更好的方法来计算相对路径,str_replace()但是您知道了。
str_replace()