PHP将文件复制到具有随机名称的多个子文件夹

时间:2013-06-24 01:01:03

标签: php

我有一个HTML表单,其中一个输入创建了一个文件夹。文件夹名称由网站访问者选择。每个访问者在我的网站上创建自己的文件夹,以便随机生成。它们是使用PHP代码创建的。

现在我想编写一个PHP代码,将文件复制到所有子目录,而不管生成的目录数量。

我不想继续为每个创建的目录编写PHP行 - 即手动插入文件名(例如folder01,xyzfolder,folderabc等等),而是自动插入。

我用谷歌搜索但是我没有成功。这可能吗?如果是,我该怎么办呢?

请忽略安全性等......我在内部进行大规模测试之前对其进行测试。

谢谢

1 个答案:

答案 0 :(得分:0)

很遗憾我不能评论所以继续......

//get the new folder name
$newfolder = $_POST['newfoldername'];
//create it if not exist
if(!is_dir("./$newfolder")) {
  mkdir("./$newfolder", 0777, true);
}


//list all folder
$dirname = './';
$dir = opendir($dirname); 
while($file = readdir($dir)) {
    if(($file != '.' OR $file != '..') AND is_dir($dirname.$file))
    {
        //generate a randomname
        $str = 'yourmotherisveryniceABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789';
        $randomname = str_shuffle($str);
        $actualdir = $dirname.$file;
            //copy of the file
            copy($uploadedfile['tmp_name'],  $actualdir.$randomname);

    }
}
closedir($dir);

我只是想说,通过寻找你想做的事情,你似乎很懒。因为当我读到“我想写一个PHP代码来复制”时,答案就在你的句子中:复制PHP和文件夹列表无论多少?然后只需简单列出它!

也许你需要学习如何使用谷歌...如果你搜索“我想写一个PHP代码将文件复制到所有的子目录,无论生成的目录数量是多少?” >“当然你永远找不到。