将文件复制到文件夹(如果存在)+1


Copy file to folder if exist +1

我是php新手。每隔17秒,我的php代码就会在以下文件夹中生成id1.php和id2.php:"sitename.com/"所以,每17秒我就得到一个:

sitename.com/master.php
sitename.com/id1.php
sitename.com/id2.php
sitename.com/filebag/id1.php
sitename.com/filebag/id2.php
sitename.com/filebag/id3.php

脚本生成id1.php和id2.php后,我需要将这些文件复制到sitename/filebag/,如果存在文件名,则添加+1。所以最后,我必须得到这样的情况:

sitename.com/
sitename.com/master.php
sitename.com/filebag/id1.php
sitename.com/filebag/id2.php
sitename.com/filebag/id3.php
sitename.com/filebag/id4.php
sitename.com/filebag/id5.php and so on...

我使用master.php来替换

<?php 
$idname = "id1";
copy ("./id1.php","./filebag/$idname.php");
?>

问题是,如果文件名存在于这个文件夹"sitename.com/filebag/"

中,我该如何重命名文件

此代码提供您想要的:

<?php
$stringName = "id";
$numName = "1";
$file_orig = './' . $stringName . $numName . '.php'; 
$file_dest = './filebag/' . $stringName . $numName . '.php'; 
if(file_exists($file_dest))
{
   $count = (int)$numName;
   while(file_exists($file_dest))
   {
       $count = $count + 1;
       $file_dest = './filebag/' . $stringName . $count . '.php'; 
   }
}
copy ($file_orig, $file_dest);
?>