Простое руководство по реализации DomPDF в контроллере Laravel для отображения данных

В этом сообщении блога мы рассмотрим, как использовать DomPDF в контроллере Laravel для создания и отображения PDF-документов, содержащих данные. DomPDF — популярная библиотека PHP, которая позволяет конвертировать HTML-контент в формат PDF. Мы рассмотрим различные методы и предоставим примеры кода, которые помогут вам начать работу.

Метод 1: базовая настройка и установка
Для начала убедитесь, что в вашей системе установлен Laravel. Вы можете создать новый проект Laravel, используя следующую команду:

laravel new dompdf-demo

Затем установите библиотеку DomPDF с помощью Composer:

composer require dompdf/dompdf

Метод 2: создайте контроллер
Теперь давайте создадим контроллер, который будет обрабатывать создание PDF-файла и отображение данных. Запустите следующую команду, чтобы создать новый контроллер:

php artisan make:controller PDFController

Метод 3: определение маршрута
В файле маршрутов (routes/web.php) определите маршрут, который соответствует методу PDFController для создания и отображения PDF-файла:

Route::get('/generate-pdf', 'PDFController@generatePDF')->name('pdf.generate');

Метод 4: создание PDF с данными
Внутри PDFControllerсоздайте метод generatePDF. Этот метод сгенерирует PDF-файл с использованием DomPDF и передаст данные в представление PDF:

use Dompdf\Dompdf;
public function generatePDF()
{
    // Retrieve data from your database or any other source
    $data = ['title' => 'Sample Data', 'content' => 'Lorem ipsum dolor sit amet.'];
    // Generate the PDF
    $dompdf = new Dompdf();
    $dompdf->loadHtml(view('pdf', $data));
    $dompdf->render();
    // Display the PDF in the browser
    return $dompdf->stream('document.pdf');
}

Метод 5: создание представления PDF
Создайте новый файл представления колонок с именем pdf.blade.phpв каталоге resources/views. Это представление будет содержать HTML-структуру PDF-документа, включая данные, переданные от контроллера:

<!DOCTYPE html>
<html>
<head>
    <title>{{ $title }}</title>
</head>
<body>
    <h1>{{ $title }}</h1>
    <p>{{ $content }}</p>
</body>
</html>

Метод 6. Проверка создания PDF-файла
Чтобы проверить создание PDF-файла, перейдите по маршруту, определенному на шаге 3 (/generate-pdf). Это запустит метод generatePDFв PDFControllerи отобразит сгенерированный PDF-файл в браузере.

В этой статье мы рассмотрели шаги, необходимые для реализации DomPDF в контроллере Laravel для создания и отображения PDF-документов. Мы рассмотрели создание контроллера, определение маршрутов, создание PDF-файлов с данными, создание представлений PDF и тестирование создания PDF-файлов. Следуя этим методам, вы можете легко включить функцию создания PDF-файлов в свое приложение Laravel.