양식에 업로드 필드 정의
먼저 <input type="file">
사용자가 업로드할 파일이나 이미지를 선택할 수 있도록 HTML 양식에 필드를 추가합니다.
<form method="POST" action="{{ route('upload') }}" enctype="multipart/form-data">
@csrf
<input type="file" name="file">
<button type="submit">Upload</button>
</form>
업로드 요청 처리
컨트롤러 에서는 Laravel 메서드에서 업로드 요청을 처리할 수 있습니다. 개체를 사용하여 Illuminate\Http\Request
업로드된 파일에 액세스하고 필요한 처리 작업을 수행합니다.
use Illuminate\Http\Request;
public function upload(Request $request)
{
if($request->hasFile('file')) {
$file = $request->file('file');
// Handle the file here
}
}
파일 저장
Laravel store
업로드된 파일을 저장하는 방법을 제공합니다. 파일 개체에서 이 메서드를 호출하고 원하는 저장 경로를 제공하기만 하면 됩니다.
$path = $file->store('uploads');
이미지 처리
크기 조정, 자르기 또는 필터 적용과 같은 이미지를 처리해야 하는 경우 Intervention Image와 같은 이미지 처리 라이브러리를 사용할 수 있습니다. 먼저 Composer를 통해 Intervention Image 패키지를 설치합니다.
composer require intervention/image
그런 다음 라이브러리의 메서드를 사용하여 이미지를 처리할 수 있습니다.
use Intervention\Image\Facades\Image;
public function upload(Request $request)
{
if($request->hasFile('file')) {
$file = $request->file('file');
$image = Image::make($file);
// Handle the image here
}
}
업로드된 파일 및 이미지 표시
마지막으로 업로드된 파일과 이미지를 사용자 인터페이스에 표시할 수 있습니다. 의 도우미 메서드를 사용하여 Laravel 저장된 파일 및 이미지에 대한 공개 URL을 생성하고 HTML 또는 CSS에서 사용합니다.
$url = asset('storage/'. $path);
$url
HTML 또는 CSS의 변수를 사용하여 업로드된 파일 또는 이미지를 표시 할 수 있습니다 .
이러한 단계를 따르고 의 Laravel 내장 기능을 활용하면 Laravel 애플리케이션에서 파일과 이미지를 쉽게 업로드하고 처리할 수 있습니다.