[Học Laravel] Cách import, export Excel trong Laravel 5.7

[Học Laravel] Cách import, export Excel trong Laravel 5.7

Khi bạn làm dự án chắc chắn bạn đã được yêu cầu export file Excel hoặc import dữ liệu file excel vào database. Khi đó bạn sẽ nghĩ ngay đến các hàm xử lý mà PHP cung cấp sẵn như fopen để đọc file, fgetcsv để đọc file csv … Tuy nhiên hôm nay WebFree.Net sẽ giới thiệu đến bạn 1 package hỗ trợ chúng ta đọc, xuất file excel hay file csv một cách rất dễ dàng và nhanh chóng. Và đó chính là maatwebsite/excel.

Khi bạn làm dự án chắc chắn bạn đã được yêu cầu export file Excel hoặc import dữ liệu file excel vào database. Khi đó bạn sẽ nghĩ ngay đến các hàm xử lý mà PHP cung cấp sẵn như fopen để đọc file, fgetcsv để đọc file csv … Tuy nhiên hôm nay WebFree.Net sẽ giới thiệu đến bạn 1 package hỗ trợ chúng ta đọc, xuất file excel hay file csv một cách rất dễ dàng và nhanh chóng. Và đó chính là maatwebsite/excel..Chúng ta bắt đầu tiến hành thực hiện các bước sau:

Bước 1: Cài đặt Laravel 5.7

Trong bước này, chúng ta sẽ cài đặt 1 ứng dụng Laravel 5.7, chạy lệnh dưới đây để bắt đầu tạo hoặc có thể xem hướng dẫn chi tiết tại đây:

composer create-project --prefer-dist laravel/laravel blog "5.7.*"

Bước 2: Cài đặt gói Maatwebsite

Trong bước này, chúng ta bắt đầu cài package Maatwebsite, chạy lệnh dưới đây để bắt cài:

composer require maatwebsite/excel

Bây giờ mở file app/config.php và thêm vào provider và aliase như sau:

app/config.php:

'providers' => [

	....

	MaatwebsiteExcelExcelServiceProvider::class,

],

'aliases' => [

	....

	'Excel' => MaatwebsiteExcelFacadesExcel::class,

],

Sau đó, chúng ta tạo một tệp tin cấu hình bằng cách sử dụng câu lệnh sau:

php artisan vendor:publish

Nó sẽ tạo một tập tin cấu hình mới có tên “config/excel.php”.

Bước 4: Viết Routes

Trong bước này, chúng ta tạo đường dẫn export import, vì vậy hãy mở tệp “routes/web.php” và thêm như sau:

routes/web.php:

Route::get('export', '[email protected]')->name('export');
Route::get('importExportView', '[email protected]');
Route::post('import', '[email protected]')->name('import');

Bước 5: Tạo một lớp Import

Chạy lệnh sau:

php artisan make:export UsersExport --model=User

app/Exports/UsersExport.php:

Bước 7: Khởi tạo Controller

Trong bước này, chúng ta tạo một controller MyController trong app/Http/Controllers/MyController.php và chèn đoạn code sau:

app/Http/Controllers/MyController.php

file('file'));
           
        return back();
    }
}

Bước 8: Tạo Blade

Trong bước cuối cùng, hãy tạo import.blade.php (resource/Views/import.blade.php) và đặt mã sau:

resources/views/import.blade.php




    Laravel 5.7 Import Export Excel to database Example - ItSolutionStuff.com
Laravel 5.7 Import Export Excel to database Example - ItSolutionStuff.com
@csrf
Export User Data

Kết luận

Như vậy WebFree.Net đã hướng dẫn rất chi tiết cách import và export file Excel trong Laravel 5.7. Hy vọng các bạn có thể thực hiện thành công, nếu có gì không hiểu bạn có thể để lại bình luận để được giải đáp. Chúc các bạn thành công.

Tài liệu tham khảo

admin

Leave a Reply

Your email address will not be published. Required fields are marked *