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

时间:2013-07-13 17:09:49

标签: php copy

我是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/”

1 个答案:

答案 0 :(得分:0)

此代码提供您想要的内容:

<?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);

?>