Thư viện EasyXLS Excel có thể được sử dụng để xuất tệp Excel bằng PHP trên Windows, Linux, Mac hoặc các hệ điều hành khác. Việc tích hợp khác nhau tùy thuộc vào hệ điều hành hoặc nếu. NET Framework hoặc Java được chọn
EasyXLS trên Windows bằng cách sử dụng. NET Framework [COM+] với PHP
Nếu bạn chọn phiên bản COM+ của EasyXLS, hãy đảm bảo rằng bạn đã cài đặt và đăng ký EasyXLS trên máy của mình
Bước 1. Tải xuống và cài đặt Thư viện EasyXLS Excel cho. MẠNG/COM+
Để tải xuống phiên bản dùng thử của Thư viện EasyXLS Excel, hãy nhấn vào nút bên dưới
Bharathiraja
Theo dõi
18 Tháng mười hai, 2020
·
3 phút đọc
·
Chỉ dành cho thành viên
PHP đọc và ghi tệp Excel bằng PhpSpreadsheet
Gần đây tôi có một yêu cầu trong PHP để đọc và viết một tệp excel
- Yêu cầu đầu tiên là đọc file excel và đẩy dữ liệu lên cơ sở dữ liệu
- Yêu cầu thứ hai là, Tạo tệp Excel bằng dữ liệu từ cơ sở dữ liệu. Tạo Excel ở phía máy chủ. Không phải phía khách hàng
Tính năng xuất dữ liệu rất hữu ích khi dữ liệu được lưu trên ổ đĩa cục bộ để sử dụng ngoại tuyến. Chức năng xuất dữ liệu sang tệp cung cấp một cách thân thiện với người dùng để duy trì một số lượng lớn dữ liệu trong ứng dụng web. Có nhiều định dạng tệp khác nhau để xuất dữ liệu và tải xuống dưới dạng tệp. Microsoft Excel là một định dạng bảng tính được sử dụng rộng rãi để tổ chức và duy trì dữ liệu
Nói chung, chức năng xuất dữ liệu được sử dụng trong phần quản lý dữ liệu của ứng dụng web. Excel là định dạng tốt nhất để xuất dữ liệu dưới dạng tệp và bạn có thể dễ dàng xuất dữ liệu sang excel bằng PHP. Trong hướng dẫn này, chúng tôi sẽ chỉ cho bạn cách xuất dữ liệu sang Excel trong PHP
Tập lệnh PHP mẫu cho phép bạn tích hợp chức năng xuất dữ liệu sang excel. Chỉ với một cú nhấp chuột, người dùng có thể xuất dữ liệu từ cơ sở dữ liệu MySQL sang Excel và tải xuống ở định dạng tệp MS Excel [. xls/. xlsx]
Xuất dữ liệu sang Excel bằng PHP
Trong tập lệnh mẫu này, chúng tôi sẽ xuất dữ liệu từ mảng [được xác định trong tập lệnh] sang tệp excel
Biến
function filterData[&$str]{5 chứa dữ liệu ở định dạng mảng sẽ được xuất sang Excel bằng PHP
$str = preg_replace["/\t/", "\\t", $str];
$str = preg_replace["/\r?\n/", "\\n", $str];
if[strstr[$str, '"']] $str = '"' . str_replace['"', '""', $str] . '"';
}
$data = array[
array["NAME" => "John Doe", "EMAIL" => "john.doe@gmail.com", "GENDER" => "Male", "COUNTRY" => "United States"],
array["NAME" => "Gary Riley", "EMAIL" => "gary@hotmail.com", "GENDER" => "Male", "COUNTRY" => "United Kingdom"],
array["NAME" => "Edward Siu", "EMAIL" => "siu.edward@gmail.com", "GENDER" => "Male", "COUNTRY" => "Switzerland"],
array["NAME" => "Betty Simons", "EMAIL" => "simons@example.com", "GENDER" => "Female", "COUNTRY" => "Australia"],
array["NAME" => "Frances Lieberman", "EMAIL" => "lieberman@gmail.com", "GENDER" => "Female", "COUNTRY" => "United Kingdom"]
];
Hàm
function filterData[&$str]{6 dùng để lọc chuỗi trước khi thêm vào hàng của bảng excel
$str = preg_replace["/\t/", "\\t", $str];
$str = preg_replace["/\r?\n/", "\\n", $str];
if[strstr[$str, '"']] $str = '"' . str_replace['"', '""', $str] . '"';
}
function filterData[&$str]{
$str = preg_replace["/\t/", "\\t", $str];
$str = preg_replace["/\r?\n/", "\\n", $str];
if[strstr[$str, '"']] $str = '"' . str_replace['"', '""', $str] . '"';
}
Đoạn code sau giúp xuất dữ liệu trong excel và download dưới dạng file
- Biến
function filterData[&$str]{
7 xác định tên của tệp excel
$str = preg_replace["/\t/", "\\t", $str];
$str = preg_replace["/\r?\n/", "\\n", $str];
if[strstr[$str, '"']] $str = '"' . str_replace['"', '""', $str] . '"';
} - Các tiêu đề Bố trí nội dung và Loại nội dung buộc tải xuống tệp excel
- Chạy vòng lặp qua từng cặp khóa/giá trị trong mảng
function filterData[&$str]{
5
$str = preg_replace["/\t/", "\\t", $str];
$str = preg_replace["/\r?\n/", "\\n", $str];
if[strstr[$str, '"']] $str = '"' . str_replace['"', '""', $str] . '"';
} - Hiển thị tên cột dưới dạng hàng đầu tiên bằng cách sử dụng biến
function filterData[&$str]{
0
$str = preg_replace["/\t/", "\\t", $str];
$str = preg_replace["/\r?\n/", "\\n", $str];
if[strstr[$str, '"']] $str = '"' . str_replace['"', '""', $str] . '"';
} - Hàm array_walk[] trong PHP dùng để lọc dữ liệu cùng với hàm
function filterData[&$str]{
6
$str = preg_replace["/\t/", "\\t", $str];
$str = preg_replace["/\r?\n/", "\\n", $str];
if[strstr[$str, '"']] $str = '"' . str_replace['"', '""', $str] . '"';
}
// Excel file name for download
$fileName = "codexworld_export_data-" . date['Ymd'] . ".xlsx";// Headers for download
header["Content-Disposition: attachment; filename=\"$fileName\""];
header["Content-Type: application/vnd.ms-excel"];$flag = false;
foreach[$data as $row] {
if[!$flag] {
// display column names as first row
echo implode["\t", array_keys[$row]] . "\n";
$flag = true;
}
// filter data
array_walk[$row, 'filterData'];
echo implode["\t", array_values[$row]] . "\n";
}exit;
Xuất dữ liệu từ cơ sở dữ liệu sang Excel bằng PHP và MySQL
Trong tập lệnh ví dụ này, chúng tôi sẽ xuất dữ liệu từ cơ sở dữ liệu MySQL trong tệp excel bằng PHP
Tạo bảng cơ sở dữ liệu.
Trong ví dụ này, chúng ta sẽ tạo một bảng
function filterData[&$str]{2 với một số trường cơ bản trong cơ sở dữ liệu MySQL. Bảng
$str = preg_replace["/\t/", "\\t", $str];
$str = preg_replace["/\r?\n/", "\\n", $str];
if[strstr[$str, '"']] $str = '"' . str_replace['"', '""', $str] . '"';
}
function filterData[&$str]{2 chứa các bản ghi sẽ được xuất sang excel.
$str = preg_replace["/\t/", "\\t", $str];
$str = preg_replace["/\r?\n/", "\\n", $str];
if[strstr[$str, '"']] $str = '"' . str_replace['"', '""', $str] . '"';
}
CREATE TABLE `members` [ `id` int[11] NOT NULL AUTO_INCREMENT, `first_name` varchar[25] COLLATE utf8_unicode_ci NOT NULL, `last_name` varchar[25] COLLATE utf8_unicode_ci NOT NULL, `email` varchar[50] COLLATE utf8_unicode_ci NOT NULL, `gender` enum['Male','Female'] COLLATE utf8_unicode_ci NOT NULL, `country` varchar[20] COLLATE utf8_unicode_ci NOT NULL, `created` datetime NOT NULL, `status` tinyint[1] NOT NULL DEFAULT 1 COMMENT '1=Active | 0=Inactive', PRIMARY KEY [`id`] ] ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
Cấu hình cơ sở dữ liệu [dbConfig. php].
Mã sau dùng để kết nối cơ sở dữ liệu bằng PHP và MySQL. Chỉ định máy chủ cơ sở dữ liệu [
function filterData[&$str]{4], tên người dùng [
$str = preg_replace["/\t/", "\\t", $str];
$str = preg_replace["/\r?\n/", "\\n", $str];
if[strstr[$str, '"']] $str = '"' . str_replace['"', '""', $str] . '"';
}
function filterData[&$str]{5], mật khẩu [
$str = preg_replace["/\t/", "\\t", $str];
$str = preg_replace["/\r?\n/", "\\n", $str];
if[strstr[$str, '"']] $str = '"' . str_replace['"', '""', $str] . '"';
}
function filterData[&$str]{6] và tên [
$str = preg_replace["/\t/", "\\t", $str];
$str = preg_replace["/\r?\n/", "\\n", $str];
if[strstr[$str, '"']] $str = '"' . str_replace['"', '""', $str] . '"';
}
function filterData[&$str]{7] theo thông tin đăng nhập cơ sở dữ liệu của bạn.
$str = preg_replace["/\t/", "\\t", $str];
$str = preg_replace["/\r?\n/", "\\n", $str];
if[strstr[$str, '"']] $str = '"' . str_replace['"', '""', $str] . '"';
}
function filterData[&$str]{1
$str = preg_replace["/\t/", "\\t", $str];
$str = preg_replace["/\r?\n/", "\\n", $str];
if[strstr[$str, '"']] $str = '"' . str_replace['"', '""', $str] . '"';
}
Xuất dữ liệu từ cơ sở dữ liệu.
Đoạn mã sau giúp xuất dữ liệu từ cơ sở dữ liệu MySQL và tải xuống dưới dạng tệp excel.
- Hàm
function filterData[&$str]{
6 dùng để lọc chuỗi trước khi thêm vào hàng dữ liệu excel
$str = preg_replace["/\t/", "\\t", $str];
$str = preg_replace["/\r?\n/", "\\n", $str];
if[strstr[$str, '"']] $str = '"' . str_replace['"', '""', $str] . '"';
} function filterData[&$str]{
7 – Xác định tên của tệp excel sẽ được tải xuống
$str = preg_replace["/\t/", "\\t", $str];
$str = preg_replace["/\r?\n/", "\\n", $str];
if[strstr[$str, '"']] $str = '"' . str_replace['"', '""', $str] . '"';
}// Excel file name for download
0 – Xác định cột có tên của bảng excel
$fileName = "codexworld_export_data-" . date['Ymd'] . ".xlsx";// Headers for download
header["Content-Disposition: attachment; filename=\"$fileName\""];
header["Content-Type: application/vnd.ms-excel"];$flag = false;
foreach[$data as $row] {
if[!$flag] {
// display column names as first row
echo implode["\t", array_keys[$row]] . "\n";
$flag = true;
}
// filter data
array_walk[$row, 'filterData'];
echo implode["\t", array_values[$row]] . "\n";
}exit;
// Excel file name for download
1 – Thêm hàng đầu tiên vào bảng excel dưới dạng tên cột
$fileName = "codexworld_export_data-" . date['Ymd'] . ".xlsx";// Headers for download
header["Content-Disposition: attachment; filename=\"$fileName\""];
header["Content-Type: application/vnd.ms-excel"];$flag = false;
foreach[$data as $row] {
if[!$flag] {
// display column names as first row
echo implode["\t", array_keys[$row]] . "\n";
$flag = true;
}
// filter data
array_walk[$row, 'filterData'];
echo implode["\t", array_values[$row]] . "\n";
}exit;
- Lấy dữ liệu của thành viên từ cơ sở dữ liệu và thêm vào hàng của bảng excel
- Xác định các tiêu đề để buộc tệp tải xuống
- Kết xuất dữ liệu của bảng tính excel
function filterData[&$str]{4
$str = preg_replace["/\t/", "\\t", $str];
$str = preg_replace["/\r?\n/", "\\n", $str];
if[strstr[$str, '"']] $str = '"' . str_replace['"', '""', $str] . '"';
}
Xuất dữ liệu bảng HTML sang Excel bằng JavaScript
Sự kết luận
Nếu bạn muốn thêm tùy chọn xuất vào danh sách dữ liệu, tính năng xuất sang excel là hoàn hảo cho việc đó. Với tùy chọn xuất, người dùng có thể tải xuống dữ liệu dưới dạng tệp excel và lưu vào ổ đĩa cục bộ. Bạn có thể sử dụng mã đơn giản này để thêm chức năng xuất dữ liệu trong ứng dụng web bằng PHP
Bạn có muốn nhận trợ giúp triển khai hay sửa đổi hoặc nâng cao chức năng của tập lệnh này không?