php如何复制文件和子文件夹中的文件到指定目录,保持路径顺序不变

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php如何复制文件和子文件夹中的文件到指定目录,保持路径顺序不变相关的知识,希望对你有一定的参考价值。

现在可以将路径下的文件(包含子文件夹中的)都复制到制定的一个文件夹下,也能判断是文件夹就新建一个,但是复制过来的文件不会根据原文件的路径进入对应的文件夹。代码如下:<?phpcopydir("../html","../unlink");function copydir($mgrdir,$todir) if(!file_exists($todir)) mkdir($todir);//判断文件夹是否存在,不存在创建一个 else if(is_file($todir)) echo '不能把文件传到文件中!'; exit; $dir=opendir($mgrdir); while($ndir=readdir($dir)) //a.html 3.html if($ndir!='.' && $ndir!='..') $nfile=$mgrdir.'/'.$ndir;//..html/a.html or ..html/test or ..nulink/test/3.html $ntodir=$todir.'/'.$ndir;//..unlink/a.html or ..nulink/test if(is_dir($nfile)) @mkdir($ntodir);//..unlink/test/ copydir($nfile,$todir); else copy($nfile,$ntodir);

参考技术A // 使用 copy()

$r = copy('test/3.html', '3.html');

if ($r) 
    echo 'Success';
 else 
    echo 'Fail';

追问

直接复制我知道,现在是通过自定义函数遍历出来

linux中复制文件夹的所有文件到指定目录

这里我们的需求是需要将一个文件夹中的所有文件都复制到另一个文件夹中,而不是将一个文件夹复制到另外一个文件夹中。

//这里需要使用到-R参数,表示递归处理,将指定目录下的所有文件与子目录一并处理
//一开始的使用使用星号表示文件夹中的所有文件和文件夹,发现Linux会将*作为文件或者文件夹。
//所以这里使用了点代表所有文件和文件夹。
[[email protected] home]# cp -R /etc/skel/* /home/kooyuyu/
cp: cannot stat `/etc/skel/*‘: No such file or directory
[[email protected] home]# cp -R /etc/skel/. /home/kooyuyu/






以上是关于php如何复制文件和子文件夹中的文件到指定目录,保持路径顺序不变的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 gsutil 将所有文件和子文件夹从当前目录复制/移动到 Google Cloud Storage 存储桶

批处理如何删除指定天数前的文件夹

php怎样在指定的目录下创建文件夹呢?

bat怎么批量复制当前目录下若干指定文件到指定目录

如何扫描文件夹和子文件夹中的所有文件? [复制]

php复制目录下的所有文件及文件夹