Đọc Và Ghi File Excel Bằng Php Sử Dụng Thư Viện Phpexcel

Trong thực tế, đôi lúc họ sẽ cần phải truy vấn - xuất dữ liệu bởi tệp tin excel (Microsoft Excel) như: xuất dữ liệu những thống kê ra cho tất cả những người cần sử dụng, hoặc import các tài liệu từ file excel,...Và bài hôm nay mình vẫn trả lời số đông bạn hoàn toàn có thể làm cho được điều này cùng với thỏng viện PHPExcel.

Bạn đang xem: Đọc và ghi file excel bằng php sử dụng thư viện phpexcel

1, Tổng quan lại.

-PHPExcel là tlỗi viện giúp cho bạn có thể truy hỏi xuất dữ liệu từ tệp tin excel một biện pháp dễ dàng, và nhằm áp dụng được nó thì server của các bạn đề xuất đáp ứng một cách đầy đủ các đòi hỏi sau:

PHPhường phiên phiên bản tự 5.2.0 trsinh hoạt lên.PHPhường extension php_zip enabled <^phpzip_footnote>.PHPhường extension php_xml enabled.PHPhường extension php_gd2 enabled (if not compiled in).

-Sau khi đang đáp ứng một cách đầy đủ các đề xuất bên trên thì việc tiếp theo sau họ phải là download tlỗi viện PHPexcel về máy để tiến hành các bước tiếp sau (download).

2, Ghi tài liệu vào file excel.

Xem thêm: Nghĩa Của Từ To Buy Off Là Gì, Nghĩa Của Từ Buy Off Trong Tiếng Việt

-Thứ nhất ao ước thực hiện được tlỗi viện thì các bạn cần phải require tệp tin PHPExcel.php (trong thư mục Classes) vào địa điểm mong muốn sử dụng. Và dưới đây mình sẽ demo mang đến chúng ta một ví dụ về ghi tài liệu vào file excel (lý giải vào code luôn):

n)$excel->setActiveSheetIndex(0);//Tạo tiêu đề mang đến trang. (rất có thể ko cần)$excel->getActiveSheet()->setTitle("thử nghiệm ghi dữ liệu");//Xét chiều rộng lớn mang lại từng, nếu muốn phối height thì sử dụng setRowHeight()$excel->getActiveSheet()->getColumnDimension("A")->setWidth(20);$excel->getActiveSheet()->getColumnDimension("B")->setWidth(20);$excel->getActiveSheet()->getColumnDimension("C")->setWidth(30);//Xét in đậm mang đến khoảng chừng cột$excel->getActiveSheet()->getStyle("A1:C1")->getFont()->setBold(true);//Tạo tiêu đề mang đến từng cột//Vị trí gồm dạng như sau:/** * |A1|B1|C1|..|n1| * |A2|B2|C2|..|n1| * |..|..|..|..|..| * |An|Bn|Cn|..|nn| */$excel->getActiveSheet()->setCellValue("A1", "Tên");$excel->getActiveSheet()->setCellValue("B1", "Giới Tính");$excel->getActiveSheet()->setCellValue("C1", "Đơn giá(/shoot)");// thực hiện thêm dữ liệu vào cụ thể từng ô bởi vòng lặp// loại ban đầu = 2$numRow = 2;foreach ($data as $row) $excel->getActiveSheet()->setCellValue("A" . $numRow, $row<0>); $excel->getActiveSheet()->setCellValue("B" . $numRow, $row<1>); $excel->getActiveSheet()->setCellValue("C" . $numRow, $row<2>); $numRow++;// Khởi chế tạo đối tượng người sử dụng PHPExcel_IOFactory để triển khai ghi file// tại đây bản thân lưu tệp tin dưới dạng excel2007PHPExcel_IOFactory::createWriter($excel, "Excel2007")->save("data.xlsx");-Nếu như các bạn muốn xuất ra cửa sổ download thì chỉ việc sửa cái sau cuối thành:

header("Content-type: application/vnd.ms-excel");header("Content-Disposition: attachment; filename="data.xls"");PHPExcel_IOFactory::createWriter($excel, "Excel2007")->save("php://output");-Và đây là công dụng chúng ta thu được:

*

3, Đọc tài liệu từ bỏ tệp tin excel.

-Mình đã chạy thử phát âm tệp tin data.xlsxbọn họ vừa chế tác tại vị trí bên trên với giải thích luôn trong code.

setReadDataOnly(true);// Load dữ liệu lịch sự dạng đối tượng$objPHPExcel = $objData->load($file);//Lấy ra số trang áp dụng cách làm getSheetCount();// Lấy Ra thương hiệu trang sử dụng getSheetNames();//Chọn trang đề nghị truy tìm xuất$sheet = $objPHPExcel->setActiveSheetIndex(0);//Lấy ra số chiếc cuối cùng$Totalrow = $sheet->getHighestRow();//Lấy ra thương hiệu cột cuối cùng$LastColumn = $sheet->getHighestColumn();//Chuyển thay tên cột kia về địa điểm máy, VD: C là 3,D là 4$TotalCol = PHPExcel_Cell::columnIndexFromString($LastColumn);//Tạo mảng cất dữ liệu$data = <>;//Tiến hành lặp qua từng ô dữ liệu//----Lặp dòng, Vì mẫu đầu là title cột buộc phải bọn họ sẽ lặp quý giá tự mẫu 2for ($i = 2; $i getCellByColumnAndRow($j, $i)->getValue();; }}//Hiển thị mảng dữ liệuemang lại "";var_dump($data);-Sau Khi chạy file, các bạn sẽ thu được hiệu quả nhỏng sau:

*

-Tại bên trên tôi chỉ test với var_dump()phát triển thành data, còn các bạn thực hiện vươn lên là data nhằm chế tạo database tốt dùng làm hiển thị giao diện khác thì những chúng ta có thể tùy chỉnh thiết lập nhé!

3, Lời kết.

-Phần này tôi chỉ demo công dụng đọc, ghi cơ bản còn các bạn có nhu cầu nâng cấp hơn nữa thì hoàn toàn có thể tìm hiểu thêm các ví dụ trên trên đây.