先介绍一下 mkdir() 这个函数:

mkdir($path,0777,true);

第一个参数:必须,代表要创建的多级目录的路径;
第二个参数:设定目录的权限,默认是 0777,意味着最大可能的访问权;
第三个参数:true表示允许创建多级目录。

举例代码(支持创建中文目录):

<?php
    header("Content-type:text/html;charset=utf-8");
    //要创建的多级目录
    $path="php/php1/php中文";
    //判断目录存在否,存在给出提示,不存在则创建目录
    if (is_dir($path)){  
        echo "对不起!目录 " . $path . " 已经存在!";
    }else{
        //第三个参数是“true”表示能创建多级目录,iconv防止中文目录乱码
        $res=mkdir(iconv("UTF-8", "GBK", $path),0777,true); 
        if ($res){
            echo "目录 $path 创建成功";
        }else{
            echo "目录 $path 创建失败";
        }
    }
?>

       但是存在一个问题:创建的中文目录不能用is_dir()函数进行判断。因此,推荐不使用中文目录。

举例代码:

<?php
    header("Content-type:text/html;charset=utf-8");
    //要创建的多级目录
    $path="php/php1/php2";
    //判断目录存在否,存在给出提示,不存在则创建目录
    if (is_dir($path)){  
        echo "对不起!目录 " . $path . " 已经存在!";
    }else{
        //第三个参数是“true”表示能创建多级目录,iconv防止中文目录乱码
        $res=mkdir($path,0777,true); 
        if ($res){
            echo "目录 $path 创建成功";
        }else{
            echo "目录 $path 创建失败";
        }
    }
?>

更多推荐

php利用mkdir()创建多级目录