如果要實現PHP文件名相同不上傳的效果,可以使用以下方法之一:
在上傳文件時,檢查目標文件夾中是否已存在相同文件名的文件。如果存在,則不執行上傳操作,或者可以給文件重命名以避免重復。
在上傳文件時,使用文件的哈希值或唯一標識作為文件名,以確保文件名的唯一性。可以使用md5()、sha1()等哈希函數生成文件名。
下面是一個示例代碼,用于在上傳文件時檢查文件名是否已存在:
$targetDir = "uploads/"; // 目標文件夾路徑
$fileName = $_FILES["file"]["name"]; // 獲取上傳文件的原始文件名
$targetFile = $targetDir . $fileName; // 組合目標文件路徑
if (file_exists($targetFile)) {
echo "文件名已存在";
} else {
move_uploaded_file($_FILES["file"]["tmp_name"], $targetFile);
echo "文件上傳成功";
}
在上述代碼中,首先獲取上傳文件的原始文件名,然后將其與目標文件夾路徑組合成目標文件路徑。然后使用file_exists()函數檢查目標文件是否已存在,如果存在則提示文件名已存在,否則使用move_uploaded_file()函數將文件移動到目標文件夾中,并提示文件上傳成功。
需要注意的是,這只是一個簡單的示例,實際應用中還需要考慮文件名的安全性和文件類型的驗證等問題。