PHP创建多级目录的两种方法

5年以前  |  阅读数:261 次  |  编程语言:PHP 

PHP针对目录的创建,有一个专门的函数mkdir():成功,返回true,失败,返回false

函数mkdir有四个参数:

path:要创建的目录的名称

mode:权限。默认是0777(最大权限)

recursive:设置是否可以创建多级目录(true:可,false:不可)

context:文件句柄的环境。context是可修改流的行为的一套选项(很少用到)

下面给大家介绍php创建多级目录的两种方法,具体详情如下所示:

1.使用递归的思想


    function mkdirs_2($path){
    if(!is_dir($path)){
    mkdirs_2(dirname($path));
    if(!mkdir($path, 0777)){
    return false;
    }
    }
    return true;
    }
    /* http://www.manongjc.com/article/1331.html */
    $path2 = 'sdfs/sds/sds/s/s/sss';
    var_dump(mkdirs_2($path2)); //true;

1.思想主要是利用了递归, 先创建dir, 在创建dir/css ,在创建….

2.递归就是入栈的过程, 所以先让,dir/css/js/php/ok 先入栈, 则它会最后出栈…其它的就不说了.

3.dirname(path)返回的是path中除了最后一个目录的值, 即第一次返回是: dir/css/js/php,,,第二次返回 dir/css/js,,,最后一次是 ./

2.直接利用mkdir()创建, 第三个参数必须是true才能自动创建多级目录


    function mkdirs_1($path, $mode = 0777){
    if(is_dir($path)){
    return '无法创建,已经是目录了';
    }else{
    if(mkdir($path, $mode, true)) {
    return '创建成功';
    }else{
    return '创建失败';
    }
    }
    }
    /* http://www.manongjc.com/article/1332.html */
    $path1 = 'a/b/c/d/e';
    var_dump(mkdirs_1($path1)); //string '创建成功' (length=12)

以上所述是小编给大家介绍的PHP创建多级目录的两种方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

 相关文章:
PHP分页显示制作详细讲解
SSH 登录失败:Host key verification failed
获取IMSI
将二进制数据转为16进制以便显示
获取IMEI
文件下载
贪吃蛇
双位运算符
PHP自定义函数获取搜索引擎来源关键字的方法
Java生成UUID
发送邮件
年的日历图
提取后缀名
在Zeus Web Server中安装PHP语言支持
让你成为最历害的git提交人
Yii2汉字转拼音类的实例代码
再谈PHP中单双引号的区别详解
指定应用ID以获取对应的应用名称
Python 2与Python 3版本和编码的对比
php封装的page分页类完整实例