mkdir ("dir1/{dir1-1,dir1-2}",0755,TRUE);

此命令使用一个名为'{dir1-1,dir1-2}'的子文件夹创建文件夹dir1,而不是将dir1-1和dir1-2创建为dir1的两个子文件夹。

任何想法如何通过上述单个mkdir命令使它起作用?

最佳答案

PHP不像Shell那样支持大括号扩展。如果要创建多个目录,则必须多次调用mkdir(),并且可以通过循环轻松进行此操作。

您可以将TRUE作为第三个参数传递给mkdir()-这意味着备份树的所有目录(如果它们不存在且父目录可写)也将被创建。循环操作时,可以安全地将TRUE传递给所有调用,给定目录的第一次迭代将创建ojit_code,后续调用将不会产生不利影响。

例如:

$toCreate = array(
  'dir1/dir1-1',
  'dir1/dir1-2'
);

$permissions = 0755;

foreach ($toCreate as $dir) {
  mkdir($dir, $permissions, TRUE);
}

关于php - mkdir创建多个子目录php/apache,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10359058/

10-13 02:57