Làm cách nào để tạo PDF bằng Laravel 8?

Đối với dự án CRM dựa trên Laravel tùy chỉnh, bạn luôn cần tính năng tạo PDF động cho bảng khách hàng tiềm năng để dễ dàng in thông tin cơ bản về khách hàng tiềm năng trên pdf. Sau khi tìm kiếm trên Google một thời gian, tôi tình cờ tìm thấy một Trình bao bọc DOMPDF rất đẹp cho Laravel tại GitHub, laravel-dompdf

Nếu bạn muốn biết chức năng cơ bản của laravel, hãy xem bài viết của tôi Ví dụ về Laravel Crud From Scratch. Đối với ví dụ này, chúng tôi sử dụng thư viện Dompdf.

Nó là trình kết xuất theo phong cách. nó sẽ tải xuống và đọc các biểu định kiểu bên ngoài, thẻ kiểu nội tuyến và các thuộc tính kiểu của các phần tử HTML riêng lẻ. Nó cũng hỗ trợ hầu hết các thuộc tính HTML trình bày

Laravel PDF

Để tạo tệp PDF trong ứng dụng Laravel, hãy sử dụng gói dompdf. Dompdf là trình chuyển đổi HTML sang PDF. Dompdf [hầu hết] là CSS 2. 1 bố cục HTML tuân thủ và công cụ hiển thị được viết bằng ngôn ngữ PHP.

Bạn có thể tạo tệp pdf từ chế độ xem bằng DomPDF. Để xuất thành PDF, chúng tôi cần ghi tệp xem. Sau đó, chúng tôi sẽ viết mã HTML và tải dữ liệu động từ cơ sở dữ liệu theo yêu cầu. Sau đó, chúng tôi sẽ xuất chế độ xem này dưới dạng tệp PDF

Nếu bạn đang sử dụng phiên bản cũ hơn của Laravel, hãy xem hướng dẫn này Cách tạo PDF trong Laravel 5 .

Cài đặt Laravel bằng lệnh sau

composer create-project --prefer-dist laravel/laravel laravelPDF

Bây giờ, vào bên trong thư mục và mở thư mục bên trong mã phòng thu trực quan

Bươc. 1 Tải xuống gói laravel-dompdf

Nhập lệnh sau để cài đặt gói laravel-dompdf

composer require barryvdh/laravel-dompdf
➜  laravel6 git:[master] composer require barryvdh/laravel-dompdf
Using version ^0.8.5 for barryvdh/laravel-dompdf
./composer.json has been updated
Loading composer repositories with package information
Updating dependencies [including require-dev]
Package operations: 5 installs, 0 updates, 0 removals
  - Installing sabberworm/php-css-parser [8.3.0]: Downloading [100%]
  - Installing phenx/php-svg-lib [v0.3.3]: Downloading [100%]
  - Installing phenx/php-font-lib [0.5.1]: Downloading [100%]
  - Installing dompdf/dompdf [v0.8.3]: Downloading [100%]
  - Installing barryvdh/laravel-dompdf [v0.8.5]: Downloading [100%]
dompdf/dompdf suggests installing ext-imagick [Improves image processing performance]
dompdf/dompdf suggests installing ext-gmagick [Improves image processing performance]
Writing lock file
Generating optimized autoload files
> Illuminate\Foundation\ComposerScripts::postAutoloadDump
> @php artisan package:discover --ansi
Discovered Package: barryvdh/laravel-dompdf
Discovered Package: facade/ignition
Discovered Package: fideloper/proxy
Discovered Package: laravel/tinker
Discovered Package: laravel/ui
Discovered Package: nesbot/carbon
Discovered Package: nunomaduro/collision
Package manifest generated successfully.

Bươc. 2 Định cấu hình gói ứng dụng Laravel

Vì vậy, hãy chuyển đến cấu hình >> ứng dụng. php và thêm cấu hình sau

'providers' => [
    ....
    Barryvdh\DomPDF\ServiceProvider::class,
],
'aliases' => [
    ....
    'PDF' => Barryvdh\DomPDF\Facade::class,
],

Ở đây chúng tôi đang đăng ký nhà cung cấp dịch vụ đăng ký PDF cho ứng dụng của mình và đặt bí danh cho nó. Vì vậy, khi chúng tôi cần tạo PDF, chúng tôi cần đưa nó vào không gian tên của mình như,

use PDF;

Sau đó, chúng tôi khởi tạo một lớp PDF và sử dụng API của nó để nâng cao hơn nữa tệp PDF đã tạo

Bươc. 3 Tạo một tập tin lưỡi bố trí

Trong thư mục tài nguyên >> chế độ xem, tạo một tệp mới có tên là bố cục. lưỡi. php



  
  
  
  Laravel CRUD Example
  


  
@yield['content']

Bước 4. Tạo các tệp mô hình và di chuyển

Chúng tôi sẽ tạo các tệp mô hình và di chuyển bằng lệnh sau

php artisan make:model Disneyplus -m

Bây giờ, hãy chuyển đến [dấu thời gian]. tạo_disneypluses_table. php và thêm các cột

public function up[]
{
        Schema::create['disneypluses', function [Blueprint $table] {
            $table->bigIncrements['id'];
            $table->string['show_name'];
            $table->string['series'];
            $table->string['lead_actor'];
            $table->timestamps[];
        }];
}

Bây giờ, di chuyển cơ sở dữ liệu bằng lệnh sau

________số 8_______

Bước 5. Tạo một bộ điều khiển và các tuyến đường

Bước tiếp theo là tạo DisneyplusController. tệp php

php artisan make:controller DisneyplusController

Bây giờ, thêm hai route bên trong routes >> web. tập tin php

composer require barryvdh/laravel-dompdf
0

Bây giờ, tạo hai phương thức bên trong DisneyplusController. tập tin php.  

composer require barryvdh/laravel-dompdf
1

Hãy nhớ nhập mô-đun PDF bằng cách sử dụng PDF;

Bươc. 6 Tạo file blade form để nhập dữ liệu

Bây giờ, trong thư mục views, hãy tạo biểu mẫu. lưỡi. tệp php. Thêm đoạn mã sau

composer require barryvdh/laravel-dompdf
2

Bước 7. Lưu trữ dữ liệu trong cơ sở dữ liệu

Bây giờ, chúng ta sẽ viết hai hàm bên trong DisneyplusController. tệp php

composer require barryvdh/laravel-dompdf
3

Vì vậy, trong tệp trên, đầu tiên, chúng tôi đã hiển thị tệp biểu mẫu, sau đó bên trong chức năng lưu trữ, chúng tôi kiểm tra xác thực và sau đó lưu trữ dữ liệu vào cơ sở dữ liệu

Ngoài ra, hãy thêm các trường có thể điền vào bên trong Disneyplus. tệp mô hình php

composer require barryvdh/laravel-dompdf
4

Bây giờ, đi đến tuyến đường này. http. // ấu trùng 6. thử nghiệm/disneyplus hoặc http. //máy chủ cục bộ. 8000/disneyplus

Bạn sẽ thấy một hình thức. Cố gắng lưu dữ liệu và nếu mọi thứ trong mã đều đúng, bạn sẽ thấy một mục nhập trong cơ sở dữ liệu

Bươc. 8 Tạo một file view để hiển thị dữ liệu

Trước khi tạo tệp xem, chúng ta cần thêm một tuyến đường bên trong web. php

composer require barryvdh/laravel-dompdf
5

Bây giờ, hãy tạo một tệp dạng xem có tên danh sách. lưỡi. tệp php. Thêm đoạn mã sau

composer require barryvdh/laravel-dompdf
6

Bây giờ, hãy thêm mã bên trong hàm index[] của DisneyplusController. tệp php

composer require barryvdh/laravel-dompdf
7

Bây giờ, hãy truy cập http. // ấu trùng 6. kiểm tra/disneyplus/list hoặc http. //máy chủ cục bộ. 8000/disneyplus/danh sách

Bạn sẽ thấy danh sách các chương trình

Bươc. 9 Tạo đường dẫn tải file pdf

Thêm mã sau vào tệp tuyến đường

composer require barryvdh/laravel-dompdf
8

Bây giờ, hãy cập nhật danh sách. lưỡi. php và thêm liên kết Tải xuống PDF

composer require barryvdh/laravel-dompdf
9

Bươc. 10 Tạo pdf. lưỡi. tập tin php để thiết kế pdf của chúng tôi

Bạn có thể tạo phiên bản DOMPDF mới và tải một chuỗi HTML, tệp hoặc tên chế độ xem phiến. Bạn có thể lưu nó vào tệp hoặc luồng

Được rồi, bên trong thư mục dạng xem, hãy tạo một tệp có tên pdf. lưỡi. php và thêm đoạn mã sau

➜  laravel6 git:[master] composer require barryvdh/laravel-dompdf
Using version ^0.8.5 for barryvdh/laravel-dompdf
./composer.json has been updated
Loading composer repositories with package information
Updating dependencies [including require-dev]
Package operations: 5 installs, 0 updates, 0 removals
  - Installing sabberworm/php-css-parser [8.3.0]: Downloading [100%]
  - Installing phenx/php-svg-lib [v0.3.3]: Downloading [100%]
  - Installing phenx/php-font-lib [0.5.1]: Downloading [100%]
  - Installing dompdf/dompdf [v0.8.3]: Downloading [100%]
  - Installing barryvdh/laravel-dompdf [v0.8.5]: Downloading [100%]
dompdf/dompdf suggests installing ext-imagick [Improves image processing performance]
dompdf/dompdf suggests installing ext-gmagick [Improves image processing performance]
Writing lock file
Generating optimized autoload files
> Illuminate\Foundation\ComposerScripts::postAutoloadDump
> @php artisan package:discover --ansi
Discovered Package: barryvdh/laravel-dompdf
Discovered Package: facade/ignition
Discovered Package: fideloper/proxy
Discovered Package: laravel/tinker
Discovered Package: laravel/ui
Discovered Package: nesbot/carbon
Discovered Package: nunomaduro/collision
Package manifest generated successfully.
0

Chúng tôi đã tạo một bảng đơn giản sẽ được tạo bên trong PDF

Bươc. 11 Viết chức năng điều khiển để tải xuống PDF

Viết đoạn mã sau bên trong DisneyplusController. tệp php

➜  laravel6 git:[master] composer require barryvdh/laravel-dompdf
Using version ^0.8.5 for barryvdh/laravel-dompdf
./composer.json has been updated
Loading composer repositories with package information
Updating dependencies [including require-dev]
Package operations: 5 installs, 0 updates, 0 removals
  - Installing sabberworm/php-css-parser [8.3.0]: Downloading [100%]
  - Installing phenx/php-svg-lib [v0.3.3]: Downloading [100%]
  - Installing phenx/php-font-lib [0.5.1]: Downloading [100%]
  - Installing dompdf/dompdf [v0.8.3]: Downloading [100%]
  - Installing barryvdh/laravel-dompdf [v0.8.5]: Downloading [100%]
dompdf/dompdf suggests installing ext-imagick [Improves image processing performance]
dompdf/dompdf suggests installing ext-gmagick [Improves image processing performance]
Writing lock file
Generating optimized autoload files
> Illuminate\Foundation\ComposerScripts::postAutoloadDump
> @php artisan package:discover --ansi
Discovered Package: barryvdh/laravel-dompdf
Discovered Package: facade/ignition
Discovered Package: fideloper/proxy
Discovered Package: laravel/tinker
Discovered Package: laravel/ui
Discovered Package: nesbot/carbon
Discovered Package: nunomaduro/collision
Package manifest generated successfully.
1

Bây giờ, hãy truy cập http. // ấu trùng 6. kiểm tra/disneyplus/list hoặc http. //máy chủ cục bộ. 8000/disneyplus/list và nhấp vào liên kết Tải xuống PDF

Bạn sẽ thấy rằng nó tải xuống tệp PDF và mở nó;

Phần kết luận

Đây là một ví dụ đơn giản về Laravel PDF Generation. Cuối cùng, hướng dẫn của chúng tôi về Cách tạo PDF trong Laravel 8 đã kết thúc

Làm cách nào để tạo tệp PDF trong Laravel 8?

Đôi khi trong ứng dụng của chúng tôi, chúng tôi cần tạo tệp PDF để báo cáo hoặc có thể là hóa đơn. .
Bước 1. Cài đặt Laravel. .
Bước 2. Cài đặt gói dompdf. .
Bước 3. Thiết lập tuyến đường và bộ điều khiển. .
Bước 4. Chế độ xem thiết lập

Làm cách nào để tạo PDF từ HTML trong Laravel 8?

Tạo PDF từ HTML trong Laravel 8 .
1 Bước 1. Cài đặt Laravel 8
2 Bước 2. Cài đặt gói DOMPDF
3 Bước 3. Tạo Chế độ xem
4 Bước 4. Tạo bộ điều khiển
5 Bước 5. Đăng ký lộ trình
6 Bước 6. Chạy ứng dụng
7 ảnh chụp màn hình

Làm cách nào để tạo tệp PDF trong laravel?

Cách tạo PDF từ HTML trong laravel 5 .
Bước 1. Cài đặt. nhà soạn nhạc yêu cầu barryvdh/laravel-dompdf. .
Bước 2. Thêm nhà cung cấp dịch vụ. Bây giờ hãy mở cấu hình/ứng dụng. .
Bước 3. Thêm tuyến đường. Mở tuyến/web. .
Bước 4. Tạo bộ điều khiển. tạo một tệp trong app/Http/Controllers/BestInterviewQuestionController. .
Bước 5. Tạo Xem tập tin

Làm cách nào để tạo PDF động trong laravel?

Làm theo các bước dưới đây để tạo hoặc tạo pdf trong laravel. .
Cài đặt ứng dụng Laravel
Cơ sở dữ liệu thiết lập
Cài đặt Gói laravel-dompdf
Tạo tuyến đường
Tạo bộ điều khiển
Tạo chế độ xem Blade để tạo Pdf

Chủ Đề