Laravel에서 파일을 업로드하는 두 가지 방법

2512 단어
제1종
// 
            if($request -> hasFile('avatar') && $request -> file('avatar') -> isValid()){
                // 
                $file['ext'] = $request -> avatar -> extension();
                // 
                $file['path'] = $request -> avatar -> path();
                // mime
                $file['mine'] = $request -> avatar -> getMimeType();
                // 
                $file['originName'] = $request -> avatar -> getClientOriginalName();
                // 
                $file['size'] = $request -> avatar -> getClientSize();

                $file['uploadName'] = sha1($file['originName'].time().rand(1000, 9999)). '.'. $file['ext'];
                $request -> avatar -> move('./uploads/', $file['uploadName']);

                // 
                $data = $request -> all();
                $data['avatar'] = './upload/'.$file['uploadName'];
                $res = MemberModel::create($data);
                dd($res);

            }else {
                $message = $request -> avatar -> getErrorMessage();
                dd($message);
            }

제2종
우선 phpartisanstorage:link를 실행하여 공공 디스크를 생성합니다
// 
        //1、 
        if($request -> hasFile('file') && $request -> file('file') -> isValid()){
            //2、 
            $filename = sha1($request -> file('file') -> getClientOriginalName() . time() . rand(1000,9999)) . '.' . $request -> file('file') -> getClientOriginalExtension();
            //3、 ( )
            Storage::disk('public') -> put($filename,file_get_contents($request -> file('file') ->path()));
            //4、 ajax 
            return response() -> json([
                'errorCode'         =>  '0',
                'message'           =>  ' !',
                'path'              =>  '/storage/' . $filename
            ]);
        }else{
            //4、 ajax 
            return response() -> json([
                'errorCode'         =>  '1',
                'message'           =>  $request -> file('file') -> getErrorMessage(),
            ]);
        }

세 번째는laravel의 확장 라이브러리로 칠우에 업로드

좋은 웹페이지 즐겨찾기