Tutorial Laravel 12 Generate PDF

May 22, 2025

Tutorial Laravel 12 Generate PDF pakai DOMPdf - Solusi Koding

Pada tutorial kali ini kita akan belajar bareng bagaimana membuat fitur export pdf pada Laravel 12 menggunakan library DOMPdf.

1. Instalasi Laravel 12 dan Library DOMPdf

Untuk menginstall Laravel 12 kita bisa menggunakan perintah dibawah ini,

composer create-project laravel/laravel example-app

Note: pada perintah diatas akan menginstall Laravel 12 pada folder exammple-app.

Selanjutnya untuk menginstall library DOMPdf kita bisa menggunakan perintah dibawah ini.

composer require barryvdh/laravel-dompdf

2. Buat Controller dan View

Selanjutnya kita buat sebuah controller dengan nama PDFController menggunakan perintah dibawah ini.

php artisan make:controller PDFController

Kemudian kita harus membuat 10 data dummy yang akan kita tampilkan pada file PDF, untuk membuatnya kita bisa menggunakan perintah tinker seperti dibawah ini.

php artisan tinker

Lalu tuliskan code dibawah ini untuk mengenerate 10 data pada tinker

User::factory()->count(10)->create()

Lalu silahkan modifikasi file 'PDFController' seperti pada code berikut ini.

<?php
  
namespace App\Http\Controllers;
   
use Illuminate\Http\Request;
use App\Models\User;
use PDF;
    
class PDFController extends Controller
{
    public function generatePDF()
    {
        $users = User::get();
    
        $data = [
            'title' => 'solusikoding.com',
            'date' => date('m/d/Y'),
            'users' => $users
        ]; 
              
        $pdf = PDF::loadView('export_pdf', $data);
       
        return $pdf->download('solusikoding.pdf');
    }
}

Kemudian, buka file routes/web.php lalu modifikasi seperti dibawah ini.

<?php
  
use Illuminate\Support\Facades\Route;
  
use App\Http\Controllers\PDFController;
    
Route::get('generate-pdf', [PDFController::class, 'generatePDF']);

Langkah berikutnya kita buat file view dengan nama 'export_pdf.blade.php' pada folder 'resources/views/export_pdf.blade.php' lalu kalian ketikan code berikut ini.

<!DOCTYPE html>
<html>
<head>
    <title>Tutorial Laravel 12 Generate PDF menggunakan Library DOMPdf - solusikoding.com</title>
    <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" >
    <style>
        table {
            width: 100%;
            border-collapse: collapse;
        }

        table, th, td {
            border: 1px solid black;
        }

        th, td {
            padding: 8px;
            text-align: left;
        }
    </style>

</head>
<body>
    <h1>{{ $title }}</h1>
    <p>{{ $date }}</p>
    
    <table>
        <thead>
            <tr>
                <th>ID</th>
                <th>Name</th>
                <th>Email</th>
            </tr>
        </thead>
        <tbody>
            @foreach($users as $user)
            <tr>
                <td>{{ $user->id }}</td>
                <td>{{ $user->name }}</td>
                <td>{{ $user->email }}</td>
            </tr>
            @endforeach
        </tbody>
    </table>

</body>
</html>

Setelah beberapa proses yang telah kita lewati, berikutnya kita harus menjalankan project laravel menggunakan perintah ini

php artisan serve

lalu buka browser dan arahkan ke url

http://localhost:8000/generate-pdf

Jika tidak ada error maka aplikasi kita akan mendownload file dengan nama solusikoding.pdf dengan isi seperti dibawah ini.

Tutorial Laravel 12 Generate PDF pakai DOMPdf - Solusi Koding