php删除与复制文件夹及其文件夹下所有文件的实现代码

yipeiwu_com7年前PHP代码库

复制代码 代码如下:

<?php
 /*复制xCopy函数用法:   
  *   xCopy("feiy","feiy2",1):拷贝feiy下的文件到   feiy2,包括子目录   
  *   xCopy("feiy","feiy2",0):拷贝feiy下的文件到   feiy2,不包括子目录   
  *参数说明:   
  *   $source:源目录名   
  *   $destination:目的目录名   
  *   $child:复制时,是不是包含的子目录
  */
function xCopy($source, $destination, $child){
    if (!file_exists($destination))
    {
        if (!mkdir(rtrim($destination, '/'), 0777))
        {
        //$err->add($_LANG['cannt_mk_dir']);
        return false;
        }
        @chmod($destination, 0777);
     }
if(!is_dir($source)){ 
return 0;
}
if(!is_dir($destination)){
mkdir($destination,0777);  
}
$handle=dir($source);
while($entry=$handle->read()){
if(($entry!=".")&&($entry!="..")){
if(is_dir($source."/".$entry)){
if($child)
xCopy($source."/".$entry,$destination."/".$entry,$child);
}
else{
copy($source."/".$entry,$destination."/".$entry);
}
}   
}   
return 1;
}


 /*删除deldir函数用法:   
  *  deldidr("feiy"):删除feiy,包括子目录      
  *参数说明:   
  *   $dir:要删除的目录名   
  */
function deldir($dir) {
if (!file_exists($dir)){return true;
}else{@chmod($dir, 0777);}
  $dh=opendir($dir);
  while ($file=readdir($dh)) {
    if($file!="." && $file!="..") {
      $fullpath=$dir."/".$file;
      if(!is_dir($fullpath)) {
          unlink($fullpath);
      } else {
          deldir($fullpath);
      }
    }
  }

  closedir($dh);

  if(rmdir($dir)) {
    return true;
  } else {
    return false;
  }
}
?>

相关文章

php上传大文件失败的原因及应对策略

php上传大文件失败的原因及应对策略

为什么上传大文件总是失败,但是上传小文件就没有问题。小编也不得其解,网上搜其原因,整理了一篇关于php上传大文件失败的原因和解决办法的文章,分享给大家。 下面分别是各种原因以及解决办法...

汇总PHPmailer群发Gmail的常见问题

大家在PHPmailer群发Gmail时会遇到许多常见问题,下面为大家总结了一些常见问题,希望对大家的学习有所帮助。 1.Could not authenticate 首先,如果你没有使...

如何在php中正确的使用json

从5.2版本开始,PHP原生提供json_encode()和json_decode()函数,前者用于编码,后者用于解码。 1、json_encode()该函数主要用来将数组和对象,转换为...

php检测数组长度函数sizeof与count用法

本文实例讲述了php检测数组长度函数sizeof与count用法。分享给大家供大家参考。具体如下: 在php检测数组长度的函数有sizeof count 下面看个简单实例: 复制代码 代...

POSIX 风格和兼容 Perl 风格两种正则表达式主要函数的类比(preg_match, preg_replace, ereg, ereg_replace)

首先来看看 POSIX 风格正则表达式的两个主要函数: ereg 函数:(正则表达式匹配) 格式:int ereg ( string pattern, string string [,...