PHP创建多级文件夹

简介: php函数中自带mkdir就可以创建文件夹,但是只能创建一级目录。如果创建aa/bb/cc多级目录,是不支持的。 第一种PHP创建文件夹(用mkdirs来产生多级父级) function mkdirs($dir, $mode = 0777) { if (! is_dir ( $dir...

php函数中自带mkdir就可以创建文件夹,但是只能创建一级目录。如果创建aa/bb/cc多级目录,是不支持的。

第一种PHP创建文件夹(用mkdirs来产生多级父级)

function mkdirs($dir, $mode = 0777) {
	if (! is_dir ( $dir )) {
		if (! mkdirs ( dirname ( $dir ) )) {
			return false;
		}
		if (! mkdir ( $dir, $mode )) {
			return false;
		}
	}
	return true;
}

基本思路:1.判断文件夹是否存在

      2.不存在时递归查询其父目录是否存在。

        3.逐级创建文件夹

dirname函数可以查找传入路径的父目录

方法2

function create_folders($dir) {
	return is_dir ( $dir ) or (create_folders ( dirname ( $dir ) ) and mkdir ( $dir, 0777 ));
}
原理相同,注意 选择性语法:可以直接用or,and实现

第二种php创建文件夹(用新的参数来产生多级父级)
用PHP5中自带的mkdir 中的一个新的参数 recursive ,通过设置 recursive 为 true 可以实现递归创建目录的目的,但是对PHP4就不行了。

mkdir("aa/bb/cc",0777,true);

事实证明还是升级php版本较好,对于许多通用方法都进行了实现。
目录
相关文章
|
7月前
|
PHP
PHP 删除文件、文件夹方式
PHP 删除文件、文件夹方式
66 0
|
4月前
|
PHP
php怎么循环读取文件夹里的文件
`DirectoryIterator`类提供了一个接口来遍历文件系统目录。与 `glob`函数相比,使用 `DirectoryIterator`类可以获得更多文件属性信息,如文件大小、修改时间等,从而进行更复杂的文件处理操作。
44 0
|
7月前
|
PHP
php判断文件夹是否存在,不存在新建
这样,如果指定的文件夹不存在,就会在指定路径上创建新的文件夹。
103 0
|
PHP
php文件管理:移动文件到指定文件夹copy函数
php文件管理:移动文件到指定文件夹copy函数
186 0
|
PHP
PHP实现自制随机图片API- 调用文件夹和引用网络图片
PHP实现随机图片API- 调用文件夹和引用网络图片
212 0
|
PHP
PHP 删除文件、文件夹方式
PHP 删除文件、文件夹方式
196 0
|
PHP
PHP获取根目录下子文件夹作为链接的解决方案
PHP获取根目录下子文件夹作为链接的解决方案
59 0
|
Shell PHP
关于php创建扩展的一个坑:找不到skeleton
关于php创建扩展的一个坑:找不到skeleton
115 0
关于php创建扩展的一个坑:找不到skeleton