コード例 #1
0
 /**
  * save file to $dirname and return filename as stored on ftp
  * 
  * @param string
  * @param HttpUploadedFile
  * @param string filename with suffix (usually id from DB)
  * @param bool overwrite older file with given $filename ?
  * @return string
  */
 public static function saveFile($dirname, $file, $filename = NULL, $overwriteOldFile = true)
 {
     // return if no file given [may occur only when editing item otherwise it's controlled when submitting form]
     if (!$file instanceof HttpUploadedFile or empty($file->name)) {
         return null;
     }
     $dirname = Basic::AddLastSlash($dirname);
     Basic::mkdir($dirname);
     if (is_null($filename)) {
         $filename = $file->name;
     }
     $filename = self::handleFilename($filename);
     if (!$overwriteOldFile) {
         $filename = self::getUniqueFilename($dirname, null, $filename);
     }
     $dest = $dirname . $filename;
     $file->move($dest);
     return $filename;
 }