需要复制然后重命名文件的副本,如果它已经存在
$pastaTemp = $_FILES['imagem_principal']['tmp_name'];
$pastaUpload = $_SERVER['DOCUMENT_ROOT']."/casaunica/imagens/acabamentos/";
$arquivo = $pastaUpload . $_FILES['imagem_principal']['name']; //filename.jpg
if(!file_exists($pastaUpload. $_FILES['imagem_principal']['name'])){
$arquivo = $pastaUpload . $_FILES['imagem_principal']['name'];
} else {
$nome_arquivo = explode(".",$_FILES['imagem_principal']['name']);
do {
$para = $nome_arquivo[0]."_".$i.".".$nome_arquivo[1];
$nome_novo = rename($arquivo, $pastaUpload . $para);
$arquivo = $pastaUpload .$nome_novo;
$i++;
} while(file_exists($pastaUpload.$_FILES['imagem_principal']['name']));
}
输出:文件名.jpg_1
它应该是:filename_2.jpg
它不能替换旧文件..这就是为什么我需要用一个数字重命名它不需要在循环中进行但每次上传文件时