代码之家  ›  专栏  ›  技术社区  ›  gtilflm

PHP——如何知道我们是在指定的目录中还是在指定目录的子目录中

php
  •  -1
  • gtilflm  · 技术社区  · 7 年前

    下面的代码检查我们是否在 COURSES_DIR 这是我在其他地方定义的。

    if(dirname($_SERVER['PHP_SELF']) == COURSES_DIR)

    如何修改代码,使其也适用于下面的子目录 COURSES\u目录 ?例如, COURSES_DIR/sub/dir

    2 回复  |  直到 7 年前
        1
  •  0
  •   sal    7 年前

    如果要检查正在运行的脚本是否位于中定义的子文件夹中 COURSES_DIR ,我会检查 现在的 dirname 路径字符串以开头 COURSES\u目录 .大致如下:

    strpos(dirname($_SERVER['PHP_SELF']), COURSES_DIR) == 0
    
        2
  •  -1
  •   Alex.Fu    7 年前
    • 使用 opendir() readdir 获取给定目录中的所有子目录;
    • 使用 is_dir() 识别文件是否为目录;
    • 尝试判断给定目录是否等于 $_SERVER['PHP_SELF'] ;