xielin 6 lat temu
rodzic
commit
1871efba51
2 zmienionych plików z 39 dodań i 35 usunięć
  1. 38 35
      app/Http/Controllers/UploadController.php
  2. 1 0
      routes/api.php

+ 38 - 35
app/Http/Controllers/UploadController.php

@@ -8,48 +8,51 @@ use Illuminate\Support\Facades\Storage;
 
 class UploadController extends Controller
 {
-    public function uploadImage(Request $request)
-    {
-        $files = $request->files('image');
-        Log::debug('files:'.json_encode($files));
-        $fileCount = count($files);
-        $urls = [];
-        for($i=0;$i<$fileCount;$i++){
-            $kuoname=$files[$i]->getClientOriginalExtension();
+    public function uploadImage(Request $request){
+        if ($request->hasFile('image') && $request->file('image')->isValid()) {
+            $path = $request->get('path') ? $request->get('path') . '/' : date('Ym') . '/';
+//            //获取文件的扩展名
+            $kuoname = $request->file('image')->getClientOriginalExtension();
 //            //获取文件的类型
 //            $type=$request->file('image')->getClientMimeType();
 //            //获取文件的绝对路径,但是获取到的在本地不能打开
-            $filePath=$files[$i]->getRealPath();
+            $filePath = $request->file('image')->getRealPath();
             //要保存的文件名 时间+扩展名
-            $filename=time() . '_' . uniqid() .'.'.$kuoname;
+            $filename = time() . '_' . uniqid() . '.' . $kuoname;
+            $imageUrl = Storage::put($path . $filename, file_get_contents($filePath));
+            Log::debug('upload_url:' . $imageUrl);
+            if ($imageUrl) {
+                return $this->jsonSuccess(['url' => $path . $filename]);
+            } else {
+                return $this->jsonError('图片上传失败,请重试');
+            }
+        } else {
+            return $this->jsonError('仅支持图片上传,请重试');
+        }
+    }
+
+    public function uploadImages(Request $request)
+    {
+        $files = $request->file('image');
+        $fileCount = count($files);
+        $urls = [];
+        for ($i = 0; $i < $fileCount; $i++) {
+            $kuoname = $files[$i]->getClientOriginalExtension();
+            $filePath = $files[$i]->getRealPath();
+            //要保存的文件名 时间+扩展名
+            $filename = time() . '_' . uniqid() . '.' . $kuoname;
             $imageUrl = Storage::put($filename, file_get_contents($filePath));
-            Log::debug('upload_url:'.$imageUrl);
-            array_push($urls,$imageUrl);
+            if ($imageUrl) {
+                array_push($urls, $filename);
+            } else {
+                Log::debug('文件上传失败。' . $filename);
+            }
         }
-        if($urls){
-            return $this->jsonSuccess(['url' => $filename]);
-        }else{
+        if ($urls) {
+            return $this->jsonSuccess($urls);
+        } else {
             return $this->jsonError('图片上传失败,请重试');
         }
-//        if($request->hasFile('image') && $request->file('image')->isValid()){
-//            $path = $request->get('path') ? $request->get('path').'/' : date('Ym').'/';
-////            //获取文件的扩展名
-//            $kuoname=$request->file('image')->getClientOriginalExtension();
-////            //获取文件的类型
-////            $type=$request->file('image')->getClientMimeType();
-////            //获取文件的绝对路径,但是获取到的在本地不能打开
-//            $filePath=$request->file('image')->getRealPath();
-//            //要保存的文件名 时间+扩展名
-//            $filename=time() . '_' . uniqid() .'.'.$kuoname;
-//            $imageUrl = Storage::put($path.$filename, file_get_contents($filePath));
-//            Log::debug('upload_url:'.$imageUrl);
-//            if($imageUrl){
-//                return $this->jsonSuccess(['url' => $path.$filename]);
-//            }else{
-//                return $this->jsonError('图片上传失败,请重试');
-//            }
-//        }else{
-//            return $this->jsonError('仅支持图片上传,请重试');
-//        }
+
     }
 }

+ 1 - 0
routes/api.php

@@ -20,6 +20,7 @@ $api->version('v1', [
     //登录
     $api->group(['middleware' => 'chxq_jwt_auth'], function ($api) {
         $api->post('upload', 'UploadController@uploadImage');
+        $api->post('multi_upload', 'UploadController@uploadImages');
     });
     //登录+验签
     $api->group(['middleware' => ['chxq_jwt_auth','chxq_sign']], function ($api) {