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 相关文章推荐
PHP聊天室技术
Oct 09 PHP
一段防盗连的PHP代码
Dec 06 PHP
PHP 单引号与双引号的区别
Nov 24 PHP
php将数据库导出成excel的方法
May 07 PHP
php函数指定默认值方法的小例子
Dec 04 PHP
ThinkPHP查询返回简单字段数组的方法
Aug 25 PHP
PHP文件读写操作相关函数总结
Nov 18 PHP
PHP开发框架laravel安装与配置教程
Mar 13 PHP
在IIS下安装PHP扩展的方法(超简单)
Apr 10 PHP
php-app开发接口加密详解
Apr 18 PHP
PHP实现的超长文本分页显示功能示例
Jun 04 PHP
Jsonp劫持学习
Apr 01 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 str_pad 函数使用详解
2009/01/13 PHP
PHP使用数组实现矩阵数学运算的方法示例
2017/05/29 PHP
PHP+Ajax实现的博客文章添加类别功能示例
2018/03/29 PHP
jquery load()在firefox(火狐)下显示不正常的解决方法
2011/04/05 Javascript
计算世界完全对称日的js代码,粗糙版
2011/11/04 Javascript
nodejs入门详解(多篇文章结合)
2012/03/07 NodeJs
jQuery之$(document).ready()使用介绍
2012/04/05 Javascript
前后台交互过程中json格式如何解析以及如何生成
2012/12/26 Javascript
jquery新的绑定事件机制on方法的使用方法
2014/04/15 Javascript
node.js中的require使用详解
2014/12/15 Javascript
jQuery统计指定子元素数量的方法
2015/03/17 Javascript
js实现div拖动动画运行轨迹效果代码分享
2015/08/27 Javascript
基于javascript实现简单计算器功能
2016/01/03 Javascript
jquery中实现时间戳与日期相互转换
2016/04/12 Javascript
表单input项使用label同时引用Bootstrap库导致input点击效果区增大问题
2016/10/11 Javascript
js上传图片预览的实现方法
2017/05/09 Javascript
详解webpack编译多页面vue项目的配置问题
2017/12/11 Javascript
一次记住JavaScript的6个正则表达式方法
2018/02/22 Javascript
JS复杂判断的更优雅写法代码详解
2018/11/07 Javascript
vue基础之使用get、post、jsonp实现交互功能示例
2019/03/12 Javascript
解决vue-router 二级导航默认选中某一选项的问题
2019/11/01 Javascript
Vue 修改网站图标的方法
2020/12/31 Vue.js
python 多进程队列数据处理详解
2019/12/23 Python
Python类的动态绑定实现原理
2020/03/21 Python
OpenCV Python实现拼图小游戏
2020/03/23 Python
设计师家具购买和委托在线市场:Viyet
2016/11/16 全球购物
Raffaello Network德国:意大利拉斐尔时尚购物网
2019/05/01 全球购物
Servlet的生命周期
2013/08/25 面试题
有个性的自我评价范文
2013/11/15 职场文书
2014升学宴答谢词
2014/01/26 职场文书
违反交通法规检讨书
2014/09/10 职场文书
大学生逃课检讨书
2015/05/04 职场文书
解决go在函数退出后子协程的退出问题
2021/04/30 Golang
MySQL通过binlog恢复数据
2021/05/27 MySQL
各种货币符号快捷输入
2022/02/17 杂记
JavaScript实现一键复制内容剪贴板
2022/07/23 Javascript