好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

php 创建多级目录 - php文件操作

php 创建多级目录

php提供了mkdir来创建文件,但对应5.0一下的版本不支持递归创建多级目录,也就是说给定要创建的目录的上级目录不存在,那么就会创建失败,5.0及以上版本通过吧第三个参数设置为TRUE,就能递归创建指定的目录,不过自己实现一个递归创建多目录的函数也很简单,具体代码如下:

function  mkdirs( $dir ){       if (! is_dir ( $dir )){           if (!mkdirs(dirname( $dir ))){               return  FALSE;          }             if (! mkdir ( $dir , 0777)){               return  FALSE;          }      }         return  TRUE;  }       $path = "/aa/bb/cc/cd" ;  //要创建的目录       $mode =0755;  //创建目录的模式      createdir( $path , $mode ); //测试  

php创建目录的函数是mkdir($dir,$mode);但是它每次只能创建一个目录,也就是说它不能一次创建多级目录,小编整理了两个可以递归创建目录的方法,代码如下:

<?php  /*   *mkdir($dir,$mode)   *PHP 递归创建目录   */   function  mkdirs( $dir ,  $mode  = 0777)  {       if  ( is_dir ( $dir ) || @ mkdir ( $dir ,  $mode )){           return  true;      }       if  (!mkdirs(dirname( $dir ),  $mode )){           return  false;      }       return  @ mkdir ( $dir ,  $mode );  }    function  mkdirs( $dir ,  $mode  = 0777)  {       $dirArray  =  explode ( "/" , $dir );       $dirArray  =  array_filter ( $dirArray );            $created  =  "" ;       foreach ( $dirArray   as   $key  =>  $value ){           if (! empty empty ( $created )){               $created  .=  "/" . $value ;               if (! is_dir ( $created )){                   mkdir ( $created , $mode );              }          } else {               if (! is_dir ( $value )){                   mkdir ( $value , $mode );              }               $created  .=  $value ;          }      }  }  ?>  //代码应用实例   $path = "abc/ff/ss/" ;  mkdirs( $path , $mode  = 0777); 

查看更多关于php 创建多级目录 - php文件操作的详细内容...

  阅读:67次