PHP 创建嵌套目录

2022-08-30 14:44:54

我需要一个函数的帮助,以便为以下情况创建一个2级目录:

  1. 所需的子目录存在于父目录中,不执行任何操作。
  2. 父目录存在,子目录不存在。仅创建子目录。
  3. 父目录和子目录都不存在,首先创建父目录,然后创建子目录。
  4. 如果任何目录未成功创建,则返回 FALSE。

感谢您的帮助。


答案 1

使用 mkdir() 的第三个参数:

递归的允许创建在路径名中指定的嵌套目录。默认值为 FALSE。

$path = '/path/to/folder/with/subdirectory';
mkdir($path, 0777, true);

答案 2

递归 允许创建路径名中指定的嵌套目录。但没有为我工作!为此,这就是我想到的!而且它非常完美!

$upPath = "../uploads/RS/2014/BOI/002";   // full path 
$tags = explode('/' ,$upPath);            // explode the full path
$mkDir = "";

    foreach($tags as $folder) {          
        $mkDir = $mkDir . $folder ."/";   // make one directory join one other for the nest directory to make
        echo '"'.$mkDir.'"<br/>';         // this will show the directory created each time
        if(!is_dir($mkDir)) {             // check if directory exist or not
          mkdir($mkDir, 0777);            // if not exist then make the directory
        }
    }

推荐