Ấu trùng excel

Ngày nay, khi làm ứng dụng web chắc hẳn nhiều bạn đã từng nghĩ đến việc nhập và xuất dữ liệu ra cơ sở dữ liệu thông qua các file như excel, csv (nhập danh sách sản phẩm, bài viết, người dùng). ) do nó giúp chúng tôi dễ dàng thêm cũng như lấy dữ liệu từ trang web. Trong bài viết hôm nay mình sẽ giới thiệu đến các bạn pack

'aliases' => [
    ...
    'Excel' => Maatwebsite\Excel\Facades\Excel::class,
]
5, thứ có thể trả lời được hết những như cấu mình nêu ở trên với rất nhiều tính năng đi kèm

Nội dung chính Hiển thị

Phiên bản mình sử dụng sẽ là phiên bản 3. 1 và dưới đây mình sẽ hướng dẫn dựa trên các ví dụ nhỏ, giúp các bạn dễ hình dung trong quá trình tìm hiểu về package. Bắt đầu hủy nào

II. Cài đặt

1. Request

  • PHP. ^7. 0
  • ấu trùng. ^5. 5
  • Bảng tính Php. ^1. 6
  • tiện ích mở rộng PHP. php_zip, php_xml, php_gd2
Phiên bản Phiên bản Laravel Phiên bản PhpHỗ trợ2. 1<=5. 6<=7. 0Không được hỗ trợ kể từ ngày 15-5-20183. 0^5. 5^7. 0Không được hỗ trợ kể từ ngày 31-12-20183. 1^5. 5. ^6. 0^7. 1 Tính năng mới

2. Cài đặt gói

First, ta gõ dòng lệnh này vào terminal

composer require maatwebsite/excel

Thêm nhà cung cấp và bí danh vào trong tệp

_______06____3____0

Việc tiếp theo là xuất bản tệp cấu hình của gói bằng câu lệnh

php artisan vendor:publish --provider="Maatwebsite\Excel\ExcelServiceProvider"

Câu lệnh trên sẽ tạo ra tệp cấu hình

'aliases' => [
    ...
    'Excel' => Maatwebsite\Excel\Facades\Excel::class,
]
7 vào trong thư mục cấu hình và đó cũng là bước cuối cùng để cài đặt gói
'aliases' => [
    ...
    'Excel' => Maatwebsite\Excel\Facades\Excel::class,
]
5 rồi, giờ chúng ta sang phần tiếp theo là tìm hiểu các chức năng hay ho mà gói này lại cho chúng ta thôi

III. Tìm hiểu về tính năng xuất dữ liệu 'aliases' => [. 'Excel' => Maatwebsite\Excel\Facades\Excel. lớp, ] 9

Argument with job

php artisan vendor:publish --provider="Maatwebsite\Excel\ExcelServiceProvider"
0/
'aliases' => [
    ...
    'Excel' => Maatwebsite\Excel\Facades\Excel::class,
]
9 dữ liệu ra file Excel, package
'aliases' => [
    ...
    'Excel' => Maatwebsite\Excel\Facades\Excel::class,
]
5 cung cấp cho chúng ta rất nhiều tính năng như file xuất với nhiều định dạng, định dạng xuất, dữ liệu ánh xạ, file xuất qua view blade,. nhưng trong bài viết này mình chỉ liệt kê một số chức năng cơ bản mà mình hay sử dụng và mình nghĩ đủ để đáp ứng nhu cầu của các bạn

1. Xuất một tệp

First first is we will create the directory

php artisan vendor:publish --provider="Maatwebsite\Excel\ExcelServiceProvider"
3

Tiếp theo bạn nhập câu lệnh sau vào thiết bị đầu cuối

composer require maatwebsite/excel
2

Sau khi chạy câu lệnh trên sẽ tạo ra 1 tệp trong thư mục

php artisan vendor:publish --provider="Maatwebsite\Excel\ExcelServiceProvider"
4 có tên là
php artisan vendor:publish --provider="Maatwebsite\Excel\ExcelServiceProvider"
5, bạn đã chỉnh sửa tập tin đó với nội dung như sau

composer require maatwebsite/excel
5

Trong tệp

php artisan vendor:publish --provider="Maatwebsite\Excel\ExcelServiceProvider"
6 ta bổ sung hàm
php artisan vendor:publish --provider="Maatwebsite\Excel\ExcelServiceProvider"
7
composer require maatwebsite/excel
8

You can could change the end file in

php artisan vendor:publish --provider="Maatwebsite\Excel\ExcelServiceProvider"
8 to get about format file mong muốn như
php artisan vendor:publish --provider="Maatwebsite\Excel\ExcelServiceProvider"
9,
composer require maatwebsite/excel
20,
composer require maatwebsite/excel
21,
composer require maatwebsite/excel
22,

trọng

composer require maatwebsite/excel
23.
'aliases' => [
    ...
    'Excel' => Maatwebsite\Excel\Facades\Excel::class,
]
5

Như vậy, sau khi vào đường dẫn

composer require maatwebsite/excel
24 thì ta sẽ nhận được một tập tin có tên
php artisan vendor:publish --provider="Maatwebsite\Excel\ExcelServiceProvider"
8 đã được tạo ở trên. Trong tệp nhận được ở trên đã có thông tin của tất cả các trường của tất cả các ____126 hiện đang có trong cơ sở dữ liệu. STTTên tài khoảnEmailType117020907021702090803170209090

2. Lấy dữ liệu theo điều kiện

Ở phần trên mình đã hướng dẫn xuất ra một tệp chứa tất cả người dùng, bây giờ chúng ta sẽ xuất ra một tệp chỉ chứa thông tin của một người dùng hoặc một số người dùng

Trong tệp

php artisan vendor:publish --provider="Maatwebsite\Excel\ExcelServiceProvider"
5, ta bổ sung hàm____128.
'providers' => [
    /*
     * Package Service Providers...
     */
    Maatwebsite\Excel\ExcelServiceProvider::class,
]
1

trọng

composer require maatwebsite/excel
29 ta edit as after.
'providers' => [
    /*
     * Package Service Providers...
     */
    Maatwebsite\Excel\ExcelServiceProvider::class,
]
3

trọng

composer require maatwebsite/excel
23.
'providers' => [
    /*
     * Package Service Providers...
     */
    Maatwebsite\Excel\ExcelServiceProvider::class,
]
0

Như vậy, sau khi vào đường dẫn

composer require maatwebsite/excel
24 thì ta sẽ nhận được một tập tin có tên
php artisan vendor:publish --provider="Maatwebsite\Excel\ExcelServiceProvider"
8 đã được tạo ở trên. Trong tệp nhận được ở trên đã có thông tin của tất cả các trường của tất cả các ____126 hiện đang có trong cơ sở dữ liệu

STT

Tên tài khoản

E-mail

'providers' => [
    /*
     * Package Service Providers...
     */
    Maatwebsite\Excel\ExcelServiceProvider::class,
]
1

Loại

'providers' => [
    /*
     * Package Service Providers...
     */
    Maatwebsite\Excel\ExcelServiceProvider::class,
]
2

...

'providers' => [
    /*
     * Package Service Providers...
     */
    Maatwebsite\Excel\ExcelServiceProvider::class,
]
3

2. Lấy dữ liệu theo điều kiện

Ở phần trên mình đã hướng dẫn xuất ra một tệp chứa tất cả người dùng, bây giờ chúng ta sẽ xuất ra một tệp chỉ chứa thông tin của một người dùng hoặc một số người dùng

Trong tệp

php artisan vendor:publish --provider="Maatwebsite\Excel\ExcelServiceProvider"
5, ta bổ sung hàm____128.
'providers' => [
    /*
     * Package Service Providers...
     */
    Maatwebsite\Excel\ExcelServiceProvider::class,
]
4

trọng

composer require maatwebsite/excel
29 ta edit as after.
'providers' => [
    /*
     * Package Service Providers...
     */
    Maatwebsite\Excel\ExcelServiceProvider::class,
]
5

Do đó, bạn có thể xuất ra những tập tin chứa

composer require maatwebsite/excel
26 theo id cho trước, với các điều kiện khác các bạn làm tương tự các bước trên nhé.
'providers' => [
    /*
     * Package Service Providers...
     */
    Maatwebsite\Excel\ExcelServiceProvider::class,
]
6

3. Xuất tệp dựa trên

Như mình đã nói, gói này cung cấp cho chúng ta rất nhiều tính năng hữu ích trong đó có tính năng xuất tệp dựa trên chế độ xem

Trong tệp

composer require maatwebsite/excel
54, bạn thực hiện
composer require maatwebsite/excel
55

Tạo tệp

composer require maatwebsite/excel
56 chứa thông tin của các
composer require maatwebsite/excel
26, gói sẽ tự động chuyển đổi bảng
composer require maatwebsite/excel
58 thành bảng
composer require maatwebsite/excel
59.
'providers' => [
    /*
     * Package Service Providers...
     */
    Maatwebsite\Excel\ExcelServiceProvider::class,
]
7

Trong tệp

composer require maatwebsite/excel
29 bạn sửa lại hàm
php artisan vendor:publish --provider="Maatwebsite\Excel\ExcelServiceProvider"
7

'providers' => [
    /*
     * Package Service Providers...
     */
    Maatwebsite\Excel\ExcelServiceProvider::class,
]
8

4. Tạo các trang tính

composer require maatwebsite/excel
82

Lưu ý

  • Nếu trong tệp Excel cột của bạn có tên là "Tên tài khoản" thì trong tệp nhập sẽ là
    'aliases' => [
        ...
        'Excel' => Maatwebsite\Excel\Facades\Excel::class,
    ]
    
    56
  • Nếu bạn nhập dữ liệu có định dạng là ngày tháng từ trong tệp Excel mà gặp lỗi thì hãy thử giải quyết bằng cách này, mình đã từng bị và sửa lỗi khá hiệu quả

'providers' => [
    /*
     * Package Service Providers...
     */
    Maatwebsite\Excel\ExcelServiceProvider::class,
]
9

trọng

composer require maatwebsite/excel
29.
'aliases' => [
    ...
    'Excel' => Maatwebsite\Excel\Facades\Excel::class,
]
0

Trong tệp

'aliases' => [
    ...
    'Excel' => Maatwebsite\Excel\Facades\Excel::class,
]
58.
'aliases' => [
    ...
    'Excel' => Maatwebsite\Excel\Facades\Excel::class,
]
1

trọng

composer require maatwebsite/excel
23.
'aliases' => [
    ...
    'Excel' => Maatwebsite\Excel\Facades\Excel::class,
]
2

2. chèn hàng loạt

Khi bạn nhập một tệp lớn đồng nghĩa với việc một số lượng lớn hàng hóa sẽ được nhập từ đó dẫn đến hậu quả là bị gián đoạn hay gọi là thắt lưng cổ chai và điều đó sẽ ảnh hưởng đến công việc nhập dữ liệu. Bằng cách triển khai WithBatchInserts, chúng ta sẽ giải quyết vấn đề đó bằng cách xác định số lượng dòng sẽ được nhập vào cơ sở dữ liệu mỗi lần

'aliases' => [
    ...
    'Excel' => Maatwebsite\Excel\Facades\Excel::class,
]
3

3. đọc khúc

Khác với phần trên, đoạn đọc sẽ quyết định số lượng dòng sẽ đọc mỗi lần thay vì đọc hết rồi lưu tạm vào bộ nhớ, từ đó việc sử dụng bộ nhớ sẽ giảm đi, giúp việc kiểm tra bộ nhớ được tốt hơn

'aliases' => [
    ...
    'Excel' => Maatwebsite\Excel\Facades\Excel::class,
]
4

Trên đây là một vài tính năng cơ bản và gói hữu ích

'aliases' => [
    ...
    'Excel' => Maatwebsite\Excel\Facades\Excel::class,
]
5 đã trả lại, giúp ích khá nhiều trong việc nhập xuất dữ liệu với Excel. Nếu bạn muốn tìm hiểu thêm các tính năng khác thì hãy đọc docs của Maatwebsite link mình để ở bên dưới

Hy vọng bài viết này sẽ giúp ích cho các bạn phần nào khi làm việc với các file như excel, ods, csv. Cảm ơn các bạn đã đọc đến cuối bài viết