You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在PHP中获取父级的父级文件夹名称?(附示例)

获取父级的父级文件夹名称的PHP方法

好的,我来帮你搞定这个需求!从/var/www/test/test2/index.php里获取其父级的父级文件夹(也就是test)的名称,有几种简单可靠的PHP实现方式,我给你一一说明:

方法一:多次调用dirname() + basename()

这是最直观的方法,利用dirname()逐层向上获取父目录,再用basename()提取目录名称:

// 获取当前文件的绝对路径(魔术常量__FILE__会返回准确的文件路径)
$currentFilePath = __FILE__;

// 第一次调用dirname:得到当前文件的父目录 /var/www/test/test2
$parentDir = dirname($currentFilePath);
// 第二次调用dirname:得到父目录的父目录 /var/www/test
$grandParentDir = dirname($parentDir);

// 提取该目录的名称
$grandParentFolderName = basename($grandParentDir);

// 输出结果:test
echo $grandParentFolderName;

方法二:拆分路径数组

把路径拆分成数组后,直接取对应位置的元素,适合需要灵活操作路径各部分的场景:

$currentFilePath = realpath(__FILE__); // realpath()可以规范路径,去除冗余分隔符
// 用系统目录分隔符拆分路径(兼容Windows和Linux)
$pathSegments = explode(DIRECTORY_SEPARATOR, dirname(dirname($currentFilePath)));

// 取数组最后一个元素就是目标文件夹名称
$grandParentFolderName = end($pathSegments);

echo $grandParentFolderName; // 输出:test

小提示

  • __FILE__是PHP的魔术常量,无论脚本是被直接访问还是被包含,它都会返回当前文件的绝对路径,稳定性很高。
  • 如果你的路径可能存在相对路径或者冗余的.//../,先用realpath()处理一下,能得到更规范的绝对路径。

内容的提问来源于stack exchange,提问作者Kevin Lindmark

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 10:04:53