ファイルが複数回保存されず、ファイルが失われないことを確認する必要があるすべてのアイデア (md5) の場合、2 番目のファイルは保存されません (私の目標は同じファイルをハードディスクに 2 回)
つまり、 あるユーザーが画像をアップロードし、その後別のユーザーが同じ画像をアップロードした場合、2 番目の画像を保存する必要はありません。2 番目の画像は既にハード ディスクに存在しているためです。これは私のコードです
$targetFolder = '/test/uploadify/uploads'; // Relative to the root
$tempFile = $_FILES['Filedata']['tmp_name'];
$targetPath = $_SERVER['DOCUMENT_ROOT'] . $targetFolder;
$myhash = md5_file($_FILES['Filedata']['tmp_name']);
$temp = explode(".", $_FILES['Filedata']['name']);
$extension = end($temp);
$targetFile = rtrim($targetPath,'/') . '/' .$myhash.'.'.$extension;
if(file_exists($targetFile)){
echo 'exist';
}
// Validate the file type
$fileTypes = array('jpg','jpeg','gif','png'); // File extensions
$fileParts = pathinfo($_FILES['Filedata']['name']);
if (in_array($fileParts['extension'],$fileTypes)) {
move_uploaded_file($tempFile,$targetFile);
}
else {
echo 'Invalid file type.';
}
皆さんに感謝します