Esempio n. 1
0
 public static function httpUpload($field, $options, &$error)
 {
     $origin_file_name = $_FILES[$field]['name'];
     $file_name = $options['use_filename'] ? $options['use_filename'] : $origin_file_name;
     $file_path = $options['bucket'] . '/' . ($options['use_filename'] ? $options['use_filename'] : $origin_file_name);
     $path = dirname($file_path);
     $real_file_path = MEDIA_DIR . '/' . $file_path;
     if (!self::makeFileStorageDir($real_file_path)) {
         Log::getInstance()->error("Can not make storage directory {$real_file_path}");
         return false;
     }
     if (!$options['overwrite'] && file_exists($real_file_path)) {
         return $file_path;
     }
     $uploader = new Uploader(dirname($real_file_path));
     $uploader->setFieldUpload($field);
     $uploader->setOverwriteIfExists($options['overwrite']);
     $uploader->setNameAfterUploaded(basename($file_name));
     $uploader->setFilterType('.jpg, .jpeg, .png, .bmp, .jpe');
     if ($uploader->upload()) {
         $data = $uploader->getData();
         $file_path = $path . '/' . $data['file_name'];
         return 'media/' . $file_path;
     } else {
         $error = $uploader->getError();
         Log::getInstance()->warning("Can not upload file", $error);
     }
     return false;
 }