6

如何告诉 php 创建一个目录,然后在该目录中创建另一个目录?

我在这里使用 mkdir。我有一个名为图像的文件夹。我需要在图像中创建一个名为“用户”的文件夹,然后在用户下创建一个名为“15”的文件夹。我可以一次性创建名为 user 的文件夹。我怎样才能同时做到这两点?

4

6 回答 6

18

是的,您可以将recursive参数传递为true;

mkdir('images/user/15', 0777, true);
于 2012-10-02T14:41:56.057 回答
6

使用 mkdir 函数的递归标志

函数签名是:

bool mkdir ( string $pathname [, int $mode = 0777 [, bool $recursive = false [, resource $context ]]] )

所以像这样使用它

mkdir('images/user/15',0777,true);

虽然也建议不要使用777模式,但那是另一回事。

于 2012-10-02T14:41:53.223 回答
3

尝试mkdir('path/to/file', 0777, true);

mkdir ( 字符串 $pathname [, int $mode = 0777 [, bool $recursive = false [, resource $context ]]] )

阅读更多 @ PHP mkdir( $recursive = true ) 跳过最后一个目录

于 2012-10-02T14:44:04.330 回答
1
$the_path = '/user/15';
$the_mode = '0700';
mkdir($the_path,$the_mode, true);

您可以为新目录生成所需的路径和权限,将它们传递给 mkdir 函数,同时将“递归”标志设置为 true。

于 2012-10-02T15:01:10.447 回答
1

此代码将以递归方式创建目录,具有您定义的相同权限,如 0777

umask(0777);
mkdir('images/user/15', 0777, true);
于 2015-01-15T12:17:00.047 回答
0
$newdir="user";
$subdir="15";
//fetch the current working directory
$curdir= getcwd();
// append the "images" directory to your current working directory 
$dir=$curdir."\images";
// append the "$newdir" directory to your image directory path 
$path=$dir."/$newdir"; 
// for the two line u can write $dir= $curdir."\images"."/$newdir";
// check if file exits
if(is_dir($path)) //or using the single  line code if(is_dir($dir))
{
    echo "directory exists";
}
else
{
    mkdir($path."/$subdir",0777,true);
    echo " directory Created";
}
于 2016-04-17T08:25:35.490 回答