Esempio n. 1
0
 /** Creates a unique filename in the directory specified adding a counter suffix */
 public static function createUniquefilename($basename, $directory)
 {
     $basename = UploadUtils::escapeStrangeChars($basename);
     $dest = $directory . DIRECTORY_SEPARATOR . $basename;
     if (file_exists($dest)) {
         // Destination file already exists, generate an alternative.
         $pos = strrpos($basename, '.');
         if ($pos) {
             $name = substr($basename, 0, $pos);
             $ext = substr($basename, $pos);
         } else {
             $name = $basename;
         }
         $counter = 0;
         do {
             $dest = $directory . '/' . $name . '_' . $counter++ . $ext;
         } while (file_exists($dest));
     }
     return basename($dest);
 }