通过php避免文件保存重复

时间:2011-09-16 08:45:56

标签: php file save

为了使文件名唯一,我使用此代码在文件名末尾添加唯一ID:

if (!file_exists("data/$filename")) {$savingfile=$filename;} else {$savingfile="$filename-2";}

这种方法非常有效,但是如果“$ filename-2”存在则继续循环的简单方法是将它保存为“$ savefile-3”等等(以查找不存在的文件名)? / p>

3 个答案:

答案 0 :(得分:3)

$savingfile = $filename;
$i = 0;
while(file_exists($savingfile)) {
    $savingfile = $filename . '-' . ++$i;
}

答案 1 :(得分:0)

您可以尝试使用计数器并计算文件名并检查其是否存在。

另一种方法是保存最后一个值的某个地方,当你需要创建另一个文件时,只需增加它,使用它然后再次保存。

答案 2 :(得分:0)

就个人而言,我只使用tmpnam,这是一个内置的PHP函数来创建一个具有唯一名称的文件。