【问题标题】:PHP - Change file name if name already existsPHP - 如果名称已经存在,则更改文件名
【发布时间】:2014-05-18 07:22:17
【问题描述】:

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

我有这个

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

它正在工作,如果我有一个名称保存在变量 $name 中的文件,它会在之前创建一个带有 1_ 的新文件,但我需要检查是否有 1_.$name , 2_$name ......直到变量$name中没有保存同名的文件。

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

PS:我不想覆盖 obv..

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

提前致谢

【问题讨论】:

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

标签: php file rename edit


【解决方案1】:

使用循环:

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

【讨论】:

    猜你喜欢
    • 2015-03-31
    • 2023-04-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-07-25
    • 1970-01-01
    • 2012-04-02
    相关资源
    最近更新 更多