php如何复制非空文件夹
作者:互联网
首先思路就是:
1.得注意是文件才可以复制文件夹的话,是只能新建一个文件夹,然后把当前文件夹里面的文件放进去
2.所以遇到文件夹就复制,遇到文件就copy
define(DIR_XIE,'/');
//源路径
$srcdir = 'uploads';
//复制的目标路径
$dstdir = 'admin';
function copydir($srcdir,$dstdir){
//看可有文件
if(!file_exists($dstdir)){
mkdir($dstdir);
}
//先判断是否是目录,如果不是目录的话,是文件的话就直接用copy复制过去好了
if(is_dir($srcdir)){
//扫描一下列出指定路径中的文件和目录
$files = scandir($srcdir);
foreach ($files as $file){
//还要去掉. 和 ..
if($file != '.' && $file != '..'){
//那么现在带有目录或者文件名的具体目录就出来了
//源路径
$srcpath = $srcdir.DIR_XIE.$file;
//目标路径
$dstpath = $dstdir.DIR_XIE.$file;
if(is_dir($srcpath)){
//如果是目录就使用递归
copydir($srcpath,$dstpath);
}else{
//是文件的话就复制
copy($srcpath,$dstpath);
}
}
}
//删除源文件夹
deldir($srcdir);
}else if(is_file($srcdir)){
//拷贝文件
copy($srcdir,$dstdir);
}else{
echo '出错啦';
}
}
copydir($srcdir,$dstdir);
标签:文件,非空,copy,dstdir,文件夹,file,srcdir,php 来源: https://blog.csdn.net/weixin_44088587/article/details/111353206