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


Posted in PHP onOctober 28, 2016

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 相关文章推荐
利用 window_onload 实现select默认选择
Oct 09 PHP
php为什么选mysql作为数据库? Mysql 创建用户方法
Jul 02 PHP
PHP $_FILES函数详解
Mar 09 PHP
php的memcached客户端memcached
Jun 14 PHP
php中通过curl smtp发送邮件
Jun 05 PHP
基于PHP代码实现中奖概率算法可用于刮刮卡、大转盘等抽奖算法
Dec 20 PHP
Joomla调用系统自带编辑器的实现方法
May 05 PHP
PHP上传图片时判断上传文件是否为可用图片的方法
Oct 20 PHP
PHP批量获取网页中所有固定种子链接的方法
Nov 18 PHP
PHP实现添加购物车功能
Mar 06 PHP
PHP保留两位小数的几种方法
Jul 24 PHP
PHP 超级全局变量相关总结
Jun 30 PHP
PHP查询大量数据内存耗尽问题的解决方法
Oct 28 #PHP
遍历指定目录,并存储目录内所有文件属性信息的php代码
Oct 28 #PHP
php  PATH_SEPARATOR判断当前服务器系统类型实例
Oct 28 #PHP
PHP图像识别技术原理与实现
Oct 27 #PHP
PHP对称加密函数实现数据的加密解密
Oct 27 #PHP
PHP下的浮点运算不准的解决方法
Oct 27 #PHP
php函数mkdir实现递归创建层级目录
Oct 27 #PHP
You might like
PHP教程 基本语法
2009/10/23 PHP
php去除html标记的原生函数详解
2015/01/27 PHP
PHP设置images目录不充许http访问的方法
2016/11/01 PHP
PHP会话控制实例分析
2016/12/24 PHP
php 删除一维数组中某一个值元素的操作方法
2018/02/01 PHP
Laravel框架生命周期与原理分析
2018/06/12 PHP
PHP接入微信H5支付的方法示例
2019/10/28 PHP
JavaScript操作XML实例代码(获取新闻标题并分页,并分页)
2010/05/25 Javascript
javascript setAttribute, getAttribute 在不同浏览器上的不同表现
2010/08/05 Javascript
3款实用的在线JS代码工具(国外)
2012/03/15 Javascript
node.js中的fs.rename方法使用说明
2014/12/16 Javascript
Bootstrap三种表单布局的使用方法
2016/06/21 Javascript
用Angular实时获取本地Localstorage数据,实现一个模拟后台数据登入的效果
2016/11/09 Javascript
JQuery和PHP结合实现动态进度条上传显示
2016/11/23 Javascript
jQuery实现优雅的弹窗效果(6)
2017/02/08 Javascript
JS实现DIV高度自适应窗口示例
2017/02/16 Javascript
详解nodejs微信jssdk后端接口
2017/05/25 NodeJs
Webpack如何引入bootstrap的方法
2017/06/17 Javascript
JS实现自动轮播图效果(自适应屏幕宽度+手机触屏滑动)
2017/06/19 Javascript
详解基于angular-cli配置代理解决跨域请求问题
2017/07/05 Javascript
JavaScript实现的超简单计算器功能示例
2017/12/23 Javascript
js+css实现打字效果
2020/06/24 Javascript
jquery 回调操作实例分析【回调成功与回调失败的情况】
2019/09/27 jQuery
ES11新增的这9个新特性,你都掌握了吗
2020/10/15 Javascript
Python中的多行注释文档编写风格汇总
2016/06/16 Python
python抓取并保存html页面时乱码问题的解决方法
2016/07/01 Python
Python中断言Assertion的一些改进方案
2016/10/27 Python
Python使用回溯法子集树模板解决爬楼梯问题示例
2017/09/08 Python
python判断一个对象是否可迭代的例子
2019/07/22 Python
CSS3教程(10):CSS3 HSL声明设置颜色
2009/04/02 HTML / CSS
绩效工资实施方案
2014/03/15 职场文书
房屋产权证明书
2014/10/15 职场文书
12.4全国法制宣传日活动方案
2014/11/02 职场文书
乡镇党的群众路线教育实践活动制度建设计划
2014/11/03 职场文书
Python 可迭代对象 iterable的具体使用
2021/08/07 Python
Python 中的Sympy详细使用
2021/08/07 Python