Unggah dan Tangani File dan Gambar di Laravel

Tentukan bidang unggahan dalam formulir

Pertama, tambahkan <input type="file"> bidang ke formulir HTML untuk memungkinkan pengguna memilih file atau gambar untuk diunggah.

<form method="POST" action="{{ route('upload') }}" enctype="multipart/form-data">  
    @csrf  
    <input type="file" name="file">  
    <button type="submit">Upload</button>  
</form>  

 

Menangani permintaan upload

Di Laravel pengontrol, Anda dapat menangani permintaan unggahan dalam suatu metode. Gunakan Illuminate\Http\Request objek untuk mengakses file yang diunggah dan melakukan operasi penanganan yang diperlukan.

use Illuminate\Http\Request;  
  
public function upload(Request $request)  
{  
    if($request->hasFile('file')) {  
        $file = $request->file('file');  
        // Handle the file here  
    }  
}  

 

Simpan file

Laravel menyediakan store metode untuk menyimpan file yang diunggah. Cukup panggil metode ini pada objek file dan berikan jalur penyimpanan yang diinginkan.

$path = $file->store('uploads');

 

Menangani gambar

Jika Anda perlu menangani gambar, seperti mengubah ukuran, memangkas, atau menerapkan filter, Anda dapat menggunakan pustaka pemrosesan gambar seperti Gambar Intervensi. Pertama, instal paket Gambar Intervensi melalui Komposer:

composer require intervention/image

Kemudian, Anda bisa menggunakan metode perpustakaan untuk memproses gambar.

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  
    }  
}  

 

Tampilkan file dan gambar yang diunggah

Terakhir, Anda dapat menampilkan file dan gambar yang diunggah di antarmuka pengguna. Gunakan Laravel metode helper untuk menghasilkan URL publik untuk file dan gambar yang disimpan, dan gunakan dalam HTML atau CSS.

$url = asset('storage/'. $path);

 

Anda dapat menggunakan $url variabel dalam HTML atau CSS untuk menampilkan file atau gambar yang diunggah.

 

Dengan mengikuti langkah-langkah ini dan menggunakan Laravel fitur bawaan, Anda dapat dengan mudah mengunggah dan menangani file dan gambar di Laravel aplikasi Anda.