問題 × 解決策

PHPのアップロードでファイル名の重複を防ぐ方法

  • 2020年10月11日
  • PHP

問題

PHPのアップロードでファイル名の重複を防ぎたい。

解決策

「file_exists」でそのファイル名があるかどうかの判定で数値を足しながら繰り返し処理を行い、存在しなかった段階の数値を連番としてファイル名の最後に付けてアップロード処理を行う。

 

アップロード時のファイル名の重複

PHPのアップロードでファイル名の重複を防ぐ方法をご紹介します。

数値を足しながら繰り返し処理を行う。

file_exists」でそのファイル名があるかどうかの判定で数値を足しながら繰り返し処理を行い、存在しなかった段階の数値を連番としてファイル名の最後に付けてアップロード処理を行うことで、ファイル名の重複を防ぐことができます。

$basename = './filepath/filename';
$fileName = $basename;
$i = 0;
while(file_exists( $fileName . '.jpg' )){
    $fileName = $basename . '_' . $i;
    $i++;
    if($i>100){
        break;
    }
}
return $fileName . '.jpg';

参照

【php ファイル作成の小ワザ|同じ名前のファイルがある場合の処理 – shangtian’s blog】
https://www.shangtian.tokyo/entry/2019/02/12/220606

コメント

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

6 + 1 =

「問題 × 解決策」
月別アーカイブ一覧

「問題 × 解決策」
月別アーカイブ一覧