如何在php中获取根目录文件夹名而不是路径

如何在php中获取根目录文件夹名而不是路径,php,Php,我想用php获取根目录文件夹名。我知道可以使用\u DIR\u获取根目录路径,但我需要文件夹名。我们有一个php函数可以做到这一点吗?如果解决方案在目录路径上使用正则表达式,它是否在所有系统环境中都兼容?例如windows、mac等。。基本上我不想得到C:\xampp\htdocs\myProject\i想要myProject。 下面是我尝试过的$rootDirectoryPath=\u DIR\uu$rootDirectoryFoldername=''试试这个 $projectFolderNa

我想用php获取根目录文件夹名。我知道可以使用
\u DIR\u
获取根目录路径,但我需要文件夹名。我们有一个php函数可以做到这一点吗?如果解决方案在目录路径上使用正则表达式,它是否在所有系统环境中都兼容?例如windows、mac等。。基本上我不想得到
C:\xampp\htdocs\myProject
\i想要
myProject
。 下面是我尝试过的
$rootDirectoryPath=\u DIR\uu$rootDirectoryFoldername=''

试试这个

$projectFolderName = explode('/', $_SERVER['PHP_SELF'])[1];
$\u服务器['PHP\u SELF']
返回当前文件相对于根目录/公共目录的路径 您的服务器的文件夹。然后可以拆分/上的字符串,该字符串返回字符串数组。 该数组的第一个元素是项目文件夹的名称

在不同的操作系统上使用时,可以检查是否存在/或\并确定要用于分解的分隔符

$delimiter = strpos($_SERVER['PHP_SELF'], '\\') ? '\\' : '/';
$projectFolderName = explode($delimiter, $_SERVER['PHP_SELF'])[1];
这是一种方法。

您也可以使用


您是否尝试过:?@DmytroHuz getcwd()返回与dir相同的路径这几乎肯定是重复的。请继续研究。检查它是否在windows中工作。
basename(getcwd())
AFAIK,没有任何内置函数来获取根路径的
目录,因为根据构建应用程序的方式,您可以拥有真正不同的体系结构。你必须自己定义它。但是,如果它总是按照您定义的那样,您可能可以使用带分解的
\uuuuu DIR\uuuuu
来完成它,并使用
目录分隔符作为分隔符值来获取最后一个元素,以使它在所有文件系统上都能工作。它是否适用于
C:\xampp\htdocs\myProject
案例?在您的案例中,目录分隔符是“\”,所以试着用“\”分解函数。你必须使用“\\”,因为反斜杠用于转义引号。因此,你的答案的代码在windows中不起作用,但询问者希望为这两种情况或任何环境提供解决方案。我以为他想获得项目文件夹的名称。无论如何,要使它在不同的系统上工作,有很多方法可以尝试,或者检查\或/的存在,并根据这一点分解字符串,或者如果您使用的是某种环境变量文件,则在其中添加一个目录\分隔符变量。
$folderName = substr(strrchr(getcwd(),DIRECTORY_SEPARATOR),1);