php文件夹的相关操作

php获取文件夹大小

function dirSize($path){
    $sum=0;
    global $sum;
    $handle=opendir($path);
    while(($item=readdir($handle))!==false){
        if($item!='.'&&$item!='..'){
            if(is_file($path.'/'.$item)){
                $sum+=filesize($path.'/'.$item);
            }
            if(is_dir($path.'/'.$item)){
                $func=__FUNCTION__;
                $func($path.'/'.$item);
            }
        }
    }
    closedir($handle);
    return $sum;
}
//注意用的时候记得每次 要清0,要不然会累加
<?php sum=0;echo dirSize($path);?>

  

php创建文件夹

/**
 * 创建文件夹
 * @param string $dirname
 * @return string
 */
function createFolder($dirname){
    //检测文件夹名称的合法性
    if(checkFilename(basename($dirname))){
        //当前目录下是否存在同名文件
        if(!file_exists($dirname)){
            if(mkdir($dirname,0777,true)){
                $mes='文件夹创建成功';
            }else{
                $mes='文件夹创建失败';
            }
        }else{
            $mes='存在相同的文件夹名称';
        }
    }else{
        $mes='非法文件夹名称';
    }
    return $mes;
}

  

php重命名文件夹

/**
 * 重命名文件夹
 * @param string $oldname
 * @param string $newname
 * @return string
 */
function renameFolder($oldname,$newname){
    //验证文件名是否合法
    if(checkFilename(basename($newname))){
        //$path=dirname($oldname);
        if(!file_exists($newname)){
            //进行重命名
            if(rename($oldname,$newname)){
                $mes='重命名成功';
            }else{
                $mes='重命名失败';
            }
        }else{
            $mes='存在同名文件夹,请重新命名';
        }
    }else{
        $mes='非法文件夹名';
    }
    return $mes;
}

  

 

php复制文件夹及文件

/**
 * 复制文件夹及文件
 * @param $src
 * @param $dst
 * @return string
 */
function copyFolder($src,$dst){
//检测要复制到文件夹是否存在 if(!file_exists($dst)){ mkdir($dst,0777,true); }
   //打开文件 $handle=opendir($src);
  //遍历文件夹下的文件和文件夹并复制到目标文件夹 while(($item=readdir($handle))!==false){ if($item!='.'&&$item!='..'){ if(is_file($src.'/'.$item)){ copy($src.'/'.$item,$dst.'/'.basename($src).'/'.$item); } if(is_dir($src.'/'.$item)){ $func=__FUNCTION__; $func($src.'/'.$item,$dst.'/'.basename($src).'/'.$item); } } } closedir($handle); return "复制成功"; }

  php 删除文件夹及文件

/**
 * 删除文件夹及文件
 * @param $path
 * @return string
 */
function delFolder($path){
    $handle=opendir($path);
    while(($item=readdir($handle))!==false){
        if($item!="."&&$item!=".."){
            if(is_file($path."/".$item)){
          //使用unlink删除文件 unlink($path."/".$item); } if(is_dir($path."/".$item)){
         //递归,调用当前函数 $func=__FUNCTION__; $func($path."/".$item); } } } closedir($handle); rmdir($path); return "文件夹删除成功"; }

  php 剪切文件夹

/**
 * 剪切文件夹
 * @param $src 源文件夹
 * @param $dst 目标文件夹
 * @return string
 */
function cutFolder($src,$dst){
    if(file_exists($dst)){
        if(is_dir($dst)){
            if(!file_exists($dst.'/'.basename($src))){
                if(rename($src,$dst.'/'.basename($src))){
                    $mes='剪切成功';
                }else{
                    $mes='剪切失败';
                }
            }else{
                $mes='存在同名文件夹';
            }
        }else{
            $mes='不是一个文件夹';
        }
    }else{
        $mes='目标文件夹不存在';
    }
    return $mes;
}

  

posted @ 2015-08-04 21:29  风烨漾  阅读(153)  评论(0编辑  收藏  举报