欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

php复制目录下所有文件到另一目录中

程序员文章站 2022-04-25 08:18:29
...
在php中要复制一个目录的文件到另一个目录我们需要遍历指定目录,然后再复制一个个利用copy函数把目录的文件复制到新的目录即可了,下面我来介绍一个实例。


遍历某文件夹下的所有文件和文件夹,并且把所以匹配的文件复制到同一目录。下面例子把”/www/pooy/baike”目录里面的,所有html文件都复制到”/www/pooy/bk”这个目录下面。

代码如下 复制代码

$dir="/www/pooy/baike";
static $dir_list =0;
static $file_list =0;
function listfile($dir){
global $dir_list,$file_list;
$d = dir($dir);
while ( $entry = $d->read()) {
$tem_curnt=$dir."/".$entry;
//echo $tem_curnt."
";
if($entry=="." || $entry=="..") continue;
if ( is_dir( $tem_curnt)) {
listfile($tem_curnt);
echo "文件夹 ".$tem_curnt."
";
$dir_list++;
}
elseif ( is_file($tem_curnt))
{
echo "文件".$tem_curnt."
";
_copy($tem_curnt,"/www/pooy/bk");
$file_list++;
}
}
$d->close();
}
function _copy($src, $dst) {
if ( ! is_dir($src)) {
if ( ! copy($src, $dst)) {
return _log('Unable to copy files', $src);
}
} else {
mkdir($dst);
$ls = scandir($src);
for ($i = 0; $i if ($ls[$i] == '.' OR $ls[$i] == '..') continue;
$_src = $src.'/'.$ls[$i];
$_dst = $dst.'/'.$ls[$i];


if ( is_dir($_src)) {
if ( ! _copy($_src, $_dst)) {
return _log('Unable to copy files', $_src);
}
} else {
if ( ! copy($_src, $_dst)) {
return _log('Unable to copy files', $_src);
}
}
}
}
return TRUE;
}listfile($dir);
echo "目录数:".$dir_list;
echo"
";
echo"文件数:".$file_list;