- Messages
- 585
- Points
- 10
- Language
- Tiếng Việt
Tôi đã giới thiệu và hướng dẫn các bạn sử dụng thư viện PHPExcel tại địa chỉ http://gextend.net/threads/tao-bao-cao-excel-voi-thu-vien-phpexcel.17 để tạo các báo cáo Excel và bây giờ tôi tiếp tục hướng dẫn các bạn sử dụng thư viện mới nhất được chính nhà phát triển thư viện PHPExcel đề nghị tên là PhpSpreadsheet. Đây là thư viện có chức năng tương tự như PHPExcel nhưng được cải tiến rất nhiều về kiến trúc mã nguồn cũng như cho hiệu năng tốt hơn.
Thư viện PhpSpreadsheet hỗ trợ nhiều định dạng hơn PHPExcel.
Các định dạng cho phép đọc:
Để sử dụng PhpSpreadsheet các bạn cần phải sử dụng công cụ composer. Các bạn tham khảo tại địa chỉ https://getcomposer.org.
Để cài đặt, các bạn chạy lệnh composer sau:
Sau khi composer cài đặt thành công thư viện PhpSpreadsheet, các bạn có thể sử dụng thư viện như ví dụ sau:
Các bạn có thể tham khảo thêm về thư viện PhpSpreadsheet tại địa chỉ https://github.com/PHPOffice/PhpSpreadsheet và https://phpspreadsheet.readthedocs.io.
Thư viện PhpSpreadsheet hỗ trợ nhiều định dạng hơn PHPExcel.
Các định dạng cho phép đọc:
- Open Document Format/OASIS (.ods).
- Office Open XML (.xlsx) Excel 2007 and above.
- BIFF 8 (.xls) Excel 97 and above.
- BIFF 5 (.xls) Excel 95.
- SpreadsheetML (.xml) Excel 2003.
- Gnumeric.
- HTML.
- SYLK.
- CSV.
- Open Document Format/OASIS (.ods).
- Office Open XML (.xlsx) Excel 2007 and above.
- BIFF 8 (.xls) Excel 97 and above.
- HTML.
- CSV.
- PDF.
Để sử dụng PhpSpreadsheet các bạn cần phải sử dụng công cụ composer. Các bạn tham khảo tại địa chỉ https://getcomposer.org.
Để cài đặt, các bạn chạy lệnh composer sau:
Code:
composer require phpoffice/phpspreadsheet
PHP:
<?php
//Require tập tin autoload.php để tự động nạp thư viện PhpSpreadsheet
require 'path/to/vendor/autoload.php';
//Khai báo sử dụng các thư viện cần thiết
use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\Writer\Xlsx;
//Khởi tạo đối tượng spreadsheet
$spreadsheet = new Spreadsheet();
//Lấy bảng tính thao tác
$sheet = $spreadsheet->getActiveSheet();
//Nhập nội dung vào ô A1
$sheet->setCellValue('A1', 'Nội dung');
//Khởi tạo đối tượng writer
$writer = new Xlsx($spreadsheet);
//Lưu tập tin Excel
$writer->save('path/to/save/filename.xlsx');