Example #1
0
 public function upload($file)
 {
     $out = ['res' => false, 'error' => '', 'path' => '', 'ext' => ''];
     if (is_uploaded_file($file['tmp_name'])) {
         $file_tmp_name = $file['tmp_name'];
         $file_name = $file['name'];
         $mime = exif_imagetype($file_tmp_name);
         if ($mime === false) {
             $out['error'] = "Файл не является изображением " . $mime;
         } else {
             $name = Helpers::make_translit(pathinfo($file_name)['filename']);
             $dir = '/images/';
             $ext = image_type_to_extension($mime);
             $full_name = $name . $ext;
             $dir = '/images/';
             $j = 0;
             while (file_exists(__DIR__ . '/..' . $dir . $full_name)) {
                 ++$j;
                 $full_name = $name . '_' . $j . $ext;
             }
             $full_path = $dir . $full_name;
             if (move_uploaded_file($file_tmp_name, __DIR__ . '/..' . $full_path)) {
                 $out['res'] = true;
                 $out['path'] = $full_path;
                 $out['ext'] = $ext;
             } else {
                 $out['error'] = "Произошла ошибка, попробуйте еще раз";
             }
         }
     } else {
         $out['error'] = "Сервер отклюнил картинку";
     }
     return $out;
 }