php专区

 首页 > php专区 > PHP高级 > 文件上传 > php中mkdir函数递归创建目录(文件夹) - php文件操作

php中mkdir函数递归创建目录(文件夹) - php文件操作

分享到:
【字体:
导读:
          在php中mkdir函数是创建目录它自身是不可以递归创建目录了,我们需要遍历进行目录然后调用mkdir即可,下面来看一下操作方法,实例代码如下:?p...

php中mkdir函数递归创建目录(文件夹)

在php中mkdir函数是创建目录它自身是不可以递归创建目录了,我们需要遍历进行目录然后调用mkdir即可,下面来看一下操作方法,实例代码如下:

  1. /** 
  2.  * Makes directory and returns BOOL(TRUE) if exists OR made. 
  3.  * 
  4.  * @param  $path Path name 
  5.  * @return bool 
  6.  */ 
  7. function rmkdir($path$mode = 0755) { 
  8.     $path = rtrim(preg_replace(array("/\/""//{2,}/"), "/"$path), "/"); 
  9.     $e = explode("/", ltrim($path"/")); 
  10.     if(substr($path, 0, 1) == "/") { 
  11.         $e[0] = "/".$e[0]; 
  12.     } 
  13.     $c = count($e); 
  14.     $cp = $e[0]; 
  15.     for($i = 1; $i < $c$i++) { 
  16.         if(!is_dir($cp) && !@mkdir($cp$mode)) { 
  17.             return false; 
  18.         } 
  19.         $cp .= "/".$e[$i]; 
  20.     } 
  21.     return @mkdir($path$mode); 
  22. ?> 

实例2代码如下:

  1. function mkdir_r($dirName$rights=0777){ 
  2.     $dirs = explode('/'$dirName); 
  3.     $dir=''
  4.     foreach ($dirs as $part) { 
  5.         $dir.=$part.'/'
  6.         if (!is_dir($dir) && strlen($dir)>0) 
  7.             mkdir($dir$rights); 
  8.     } 
  9. ?> 

实例3代码如下:

  1. function mkdirs($dir
  2.     { 
  3.         if(!is_dir($dir)) 
  4.         { 
  5.             if(!mkdirs(dirname($dir))){ 
  6.                 return false; 
  7.             } 
  8.             if(!mkdir($dir,0777)){ 
  9.                 return false; 
  10.             } 
  11.         } 
  12.         return true; 
  13.     } 
  14.     function rmdirs($dir
  15.     { 
  16.         $d = dir($dir); 
  17.         while (false !== ($child = $d->read())){ 
  18.             if($child != '.' && $child != '..'){ 
  19.                 if(is_dir($dir.'/'.$child)) 
  20.                 rmdirs($dir.'/'.$child); 
  21.                 else unlink($dir.'/'.$child); 
  22.             } 
  23.         } 
  24.         $d->close(); 
  25.         rmdir($dir); 
  26.     } 

三个创建目录的函数都有自己的优点,这里我也没有一个个测试了,只使用了第二个感觉非常的不错。

分享到:
php移动文件夹和文件程序代码 - php文件...
php移动文件夹和文件程序代码 php中移动复制文件我们使用copy,下面我们来看一个简单的实例,他实现了目录与目录文件移动,希望此文章对大家帮助。 方法一,copy+unlink方式 我的思路是:移动=新建+删除,在移动之前在目标的目录新建一个文件夹,然后在把文件和目录都复制过去,最后在执行删除,代...
php 创建文件多种方法总结 - php文件操作
php 创建文件多种方法总结 php创建文件的方法有很多种我们最常用的就是fopen,file_put_contents这两种方法来创建文件了,下面我来给大家详细介绍介绍,有需要了解的同学可参考。 创建php文件,代码如下:   例2,代码如下:   上面没作任何考虑,如果要全面点,我们首先确定...
  •         php迷,一个php技术的分享社区,专属您自己的技术摘抄本、收藏夹。
  • 在这里……