php多级目录 mkdir 递归?

XML/HTML代码
  1. inso写的   
  2. <?php  
  3.   
  4. mkpath('hml/a/b/c/d/e');   
  5.   
  6. function mkpath($mkpath,$mode=0777){   
  7.   
  8.      $path_arr=explode('/',$mkpath);   
  9.   
  10.      foreach ($path_arr as $value){   
  11.   
  12.              if(!empty($value)){   
  13.   
  14.                  if(empty($path))$path=$value;   
  15.   
  16.                  else $path.='/'.$value;   
  17.   
  18.                  is_dir($path) or mkdir($path,$mode);   
  19.   
  20.              }   
  21.   
  22.      }   
  23.   
  24.      if(is_dir($mkpath))return true;   
  25.   
  26.      return false;   
  27.   
  28. }   
  29.   
  30. ?>   

 

XML/HTML代码
  1. 偶自己写的建立多层目录的函数   
  2. <?php  
  3.   
  4. function makedir($dir,$mode="0700") {   
  5.   
  6.      if(strpos($dir,"/")){   
  7.   
  8.              $dir_path="";   
  9.   
  10.              $dir_info=explode("/",$dir);   
  11.   
  12.              foreach($dir_info as $key=>$value){   
  13.   
  14.                      $dir_path.=$value;   
  15.   
  16.                      if(!file_exists($dir_path)){   
  17.   
  18.                          @mkdir($dir_path,$mode) or die("建立文件夹时失败了");   
  19.   
  20.                          @chmod($dir_path,$mode);   
  21.   
  22.                          }else{   
  23.   
  24.                          $dir_path.="/";   
  25.   
  26.                          continue;   
  27.   
  28.                          }   
  29.   
  30.                      $dir_path.="/";   
  31.   
  32.                      }   
  33.   
  34.              return $dir_path;   
  35.   
  36.          }else{   
  37.   
  38.                  @mkdir($dir,$mode) or die("建立失败了,请检查权限");   
  39.   
  40.                  @chmod($dir,$mode);   
  41.   
  42.                  return $dir;   
  43.   
  44.                  }   
  45.   
  46.      }//end makedir   
  47.   
  48.   
  49.   
  50. makedir("0/1/2/3/");   
  51.   
  52. ?>   
XML/HTML代码
  1. unspace提供滴多层目录建立函数   
  2. function CreateFolder($path){   
  3.   
  4.              if (!file_exists($path)){   
  5.   
  6.                      CreateFolder(dirname($path));   
  7.   
  8.                      mkdir($path, 0777) or die('目标目录权限不够,无法建立文件夹');   
  9.   
  10.              }   
  11.   
  12. }    
XML/HTML代码
  1. 村长夫人提供的多级目录建立函数   
  2. function MkPath($path, $mask){   
  3.   
  4.              $parsePath = explode("/", $path);   
  5.   
  6.              $newPath = "";   
  7.   
  8.              foreach($parsePath as $dir){   
  9.   
  10.                      $newPath .= $dir;   
  11.   
  12.                      if("" != $newPath && ".." != $newPath && "." != $newPath && !is_dir($newPath)){   
  13.   
  14.                                  if(false == @mkdir($newPath, $mask)){   
  15.   
  16.                                              return false;   
  17.   
  18.                                  }   
  19.   
  20.                      }   
  21.   
  22.                      $newPath ."/";   
  23.   
  24.              }   
  25.   
  26.              return true;   
  27.   
  28. }    
XML/HTML代码
  1. 另外一个巨经典的多级目录建立函数   
  2. /*   
  3.   
  4. *@functionName:Directory   
  5.   
  6. *@param:str '/a/b/c/d/f'   
  7.   
  8. *@returnValue:true or false   
  9.   
  10. *@USAGE:Directory('/a/b/c/d/f');   
  11.   
  12. *@函数作用:生成目录....@_@..太精典了..   
  13.   
  14. */   
  15.   
  16. function Directory($dir){       
  17.   
  18.                     return is_dir($dir) or (Directory(dirname($dir)) and mkdir($dir, 0777));   
  19.   
  20. }   

« 上一篇 | 下一篇 »

发表评论

评论内容 (必填):