PHP-如果名称已存在,则更改文件名

PHP-如果名称已存在,则更改文件名,php,file,rename,edit,Php,File,Rename,Edit,如果“数据名”已经存在,我需要更改变量数据 我有这个 if (file_exists('../../images/produtos/'.$name)){ $name = '1_'.$name; } 它正在工作,如果我有一个名为$name的文件保存在变量中,它将创建一个新文件,之前使用1,但我需要检查是否有1.$name,2.$name。。。。。。直到没有保存在变量$name中的文件名。 如果我上传了一个名为things.png的文件,我需要检查是否已经有一个名为thin

如果“数据名”已经存在,我需要更改变量数据

我有这个

if (file_exists('../../images/produtos/'.$name)){
        $name = '1_'.$name;
    }
它正在工作,如果我有一个名为$name的文件保存在变量中,它将创建一个新文件,之前使用1,但我需要检查是否有1.$name2.$name。。。。。。直到没有保存在变量$name中的文件名。

如果我上传了一个名为things.png的文件,我需要检查是否已经有一个名为things.png的文件,如果已经有了,则将名称更改为1_things.png,但是如果有一个名为1_things.png的文件,则将名称更改为2_things.png等,直到没有同名文件为止

附言:我不想覆盖obv

我很抱歉我的英语不好,但我真的不知道如何更好地解释这一点,希望你们能理解

提前感谢

使用循环:

if(file_exists('../../images/produtos/'.$name)){
$i = 1;
    while(file_exists('../../images/produtos/'.$i."_".$name)){
    $i++;
    }
$name = $i."_".$name;
}
使用循环:

if(file_exists('../../images/produtos/'.$name)){
$i = 1;
    while(file_exists('../../images/produtos/'.$i."_".$name)){
    $i++;
    }
$name = $i."_".$name;
}

为什么不重命名所有文件,并在原始文件名的末尾添加一个随机字符串或日期?例如,piano.png到piano1234.png,这样您就不必担心重复的文件名。@MarioSegura Segura很抱歉它的$name不是$nome,是的,name正在保存一个拼写错误。@abushahin没关系,但我如何检查是否已经有piano1、piano12等?抱歉,我开始:为什么不重命名所有文件,并在原始文件名的末尾添加随机字符串或日期?例如,piano.png到piano1234.png,这样您就不必担心重复的文件名。@MarioSegura Segura很抱歉它的$name不是$nome,是的,name正在保存一个拼写错误。@abushahin没关系,但我如何检查是否已经有piano1、piano12等?对不起,我要开始了:S