其他分享
首页 > 其他分享> > 如果存在将数字附加到结束,则重命名文件名

如果存在将数字附加到结束,则重命名文件名

作者:互联网

我试图重新命名图像的文件名,如果它存在,如果它的文件名是test.jpg并且它已经存在我要将其重命名为test1.jpg然后test2.jpg等等.随着代码我写了它改变我的文件名,如test1.jpg然后test12.jpg任何关于修复这个的建议将是非常感谢!

PHP

$name = $_FILES['picture']['name'];
$actual_name = pathinfo($name,PATHINFO_FILENAME);
$extension = pathinfo($name, PATHINFO_EXTENSION);

$i = 1;
while(file_exists('tmp/'.$actual_name.".".$extension))
{           
    $actual_name = (string)$actual_name.$i;
    $name = $actual_name.".".$extension;
    $i++;
}

解决方法:

这是一个小修改,我认为应该做你想要的:

$actual_name = pathinfo($name,PATHINFO_FILENAME);
$original_name = $actual_name;
$extension = pathinfo($name, PATHINFO_EXTENSION);

$i = 1;
while(file_exists('tmp/'.$actual_name.".".$extension))
{           
    $actual_name = (string)$original_name.$i;
    $name = $actual_name.".".$extension;
    $i++;
}

标签:file-exists,php,file-upload,rename,upload
来源: https://codeday.me/bug/20190930/1834713.html