Integrasi Glide di Laravel - Rumah IT

Baru

recent

Integrasi Glide di Laravel

Integrasi Glide di Laravel

Rumahit.ID - Buat para pengembang Laravel terutama yang sering bermain dalam manipulasi gambar, tentunya sudah tidak asing lagi dengan library yang satu ini. Untuk teman-teman yang baru mendengar istilah Glide Laravel, semoga artikel ini cukup membantu dalam implementasi library Glide di Laravel.


Menurut website resminya https://glide.thephpleague.com , Glide adalah pustaka manipulasi gambar on-demand yang sangat mudah ditulis dalam PHP. API langsungnya diekspos melalui HTTP, mirip dengan layanan pemrosesan gambar cloud seperti Imgix dan Cloudinary. Glide memanfaatkan pustaka yang kuat seperti Gambar Intervensi (untuk penanganan dan manipulasi gambar) dan Flysystem (untuk abstraksi sistem file).


Fitur-fitur Glide :

  1. Sesuaikan, ubah ukuran, dan tambahkan efek ke gambar menggunakan API berbasis HTTP sederhana.
  2. Gambar yang dimanipulasi secara otomatis disimpan dalam cache dan disajikan dengan header yang kedaluwarsa di masa mendatang.
  3. Buat server pemrosesan gambar Anda sendiri atau integrasikan Glide langsung ke aplikasi Anda.
  4. Mendukung pustaka GD dan ekstensi Imagick PHP.
  5. Mendukung banyak metode respons, termasuk PSR-7, HttpFoundation, dan lainnya.
  6. Kemampuan untuk mengamankan URL gambar menggunakan tanda tangan HTTP.
  7. Bekerja dengan banyak sistem file yang berbeda, berkat pustaka Flysystem.
  8. Didukung oleh pertempuran yang diuji Intervention Image penanganan dan perpustakaan manipulasi gambar.
  9. Framework-agnostic, akan bekerja dengan proyek apa pun.
  10. Komposer siap dan sesuai PSR-2.

Instalasi Glide Laravel


1. Menggunakan Composer

Glide tersedia di Packagist dan dapat diinstal menggunakan Composer. Yaitu dapat dilakukan dengan menjalankan perintah berikut:

composer require league/glide-laravel

Pastikan juga untuk menyertakan file Composer autoload dalam proyek Anda:
<?php

require 'vendor/autoload.php';

2. Integrasi Framework

Jika Anda menginginkan versi khusus Framework, adaptor berikut ini tersedia. Perhatikan, adaptor ini otomatis menyertakan pustaka dasar (league / glide), jadi Anda tidak perlu memerlukan keduanya.

composer require league/glide-cake
composer require league/glide-laravel
composer require league/glide-slim
composer require league/glide-symfony
composer require league/glide-zend

3. Download File ZIP

Proyek ini juga tersedia untuk diunduh sebagai file .zip di GitHub. Kunjungi halaman rilis, pilih versi yang  Anda inginkan, dan klik tombol download "Source Code (zip)".

Konfigurasi Glide Laravel

Jika aplikasi Anda menggunakan kerangka kerja Laravel, Anda dapat menggunakan LaravelResponseFactory. Karena Laravel menggunakan HttpFoundation di balik hood, adaptor ini sebenarnya memperluas Symfony adapter.
<?php

use League\Glide\ServerFactory;
use League\Glide\Responses\LaravelResponseFactory;

$server = ServerFactory::create([
    'response' => new LaravelResponseFactory(app('request'))
]);

Contoh Penerapan

Berikut adalah contoh yang berfungsi penuh tentang cara mengaktifkan Glide dan menjalankan Laravel dengan sangat cepat. Pertama, buat entri baru di file routes Anda:
<?php

Route::get('/img/{path}', 'ImageController@show')->where('path', '.*');

Selanjutnya, buat controller yang akan menyajikan semua gambar Glide Anda. Ini akan menggunakan jalur penyimpanan Laravel default (/storage/app) untuk gambar sumber.
<?php

namespace App\Http\Controllers;

use Illuminate\Contracts\Filesystem\Filesystem;
use League\Glide\Responses\LaravelResponseFactory;
use League\Glide\ServerFactory;

class ImageController extends Controller
{
    public function show(Filesystem $filesystem, $path)
    {
        $server = ServerFactory::create([
            'response' => new LaravelResponseFactory(app('request')),
            'source' => $filesystem->getDriver(),
            'cache' => $filesystem->getDriver(),
            'cache_path_prefix' => '.cache',
            'base_url' => 'img',
        ]);

        return $server->getImageResponse($path, request()->all());
    }
}

Untuk memahami library Glide secara mendasar, sebaiknya anda baca terlebih dahulu dokumentasi dasar glide melalui link berikut : Glide Documentation.
All Rights Reserved by Rumah IT - Rumah Teknologi Informasi © 2013 - 2022
Powered By Blogger

Contact Form

Name

Email *

Message *

Powered by Blogger.