Tôi đang xây dựng một plugin WordPress bằng cách sử dụng PHPExcel để xuất báo cáo về việc đi học của học sinh. Cho đến nay, tôi có thể thực hiện thành công mảng dữ liệu sinh viên (bao gồm cả tham dự) và chuyển đổi và tải xuống dưới dạng bảng tính. Thật không may, có một lỗi kỳ lạ: khi một học sinh đã tham dự không có sự kiện, ô đó trên bảng tính trống thay vì hiển thị số không. Tôi thích nó đi ra với một số không thực tế, nhưng tôi không thể tìm thấy một cách để làm điều đó. Đây là kịch bản của tôi:PHPExcel xuất các số không dưới dạng ô trống
error_reporting(E_ALL);
ini_set('include_path', ini_get('include_path').';../Classes/');
include 'PHPExcel.php';
include 'PHPExcel/Writer/Excel2007.php';
$objPHPExcel = new PHPExcel();
$objPHPExcel->setActiveSheetIndex(0);
$objPHPExcel->getProperties()->setCreator($user);
$objPHPExcel->getProperties()->setLastModifiedBy($user);
$objPHPExcel->getProperties()->setTitle($title);
$objPHPExcel->getProperties()->setSubject($title);
$objPHPExcel->getProperties()->setDescription($title);
$objPHPExcel->getActiveSheet()->fromArray($data, null, 'A1');
$objPHPExcel->getActiveSheet()->getStyle('A1:H1')->getFont()->setBold(true);
$columns = array('A', 'B', 'C', 'D', 'E', 'F', 'G', 'H');
foreach ($columns as $column) {
$objPHPExcel->getActiveSheet()->getColumnDimension($column)->setAutoSize(true);
} // End $columns foreach
$file_name = str_replace(' ', '_', $title);
if ($_POST['type'] == 'spreadsheet') {
header('Content-type: application/vnd.ms-excel');
header('Content-Disposition: attachment; filename="' . $file_name . '.xls"');
$objWriter = new PHPExcel_Writer_Excel2007($objPHPExcel);
$objWriter->save('php://output');
}
$ dữ liệu chứa các mảng thông tin sinh viên, trong đó có cấu trúc như thế này:
Array (
[0] => Array (
[0] => First Name
[1] => Last Name
[2] => BU ID
[3] => Barcode
[4] => Major
[5] => Class
[6] => Seminars
[7] => Showcases
)
[1] => Array (
[first_name] => Seth
[last_name] => Abel
[buid] => B00385307
[barcode] => 100324707
[student_major] => CMM
[class] => MBU2100
[seminar] => 0
[showcase] => 1
)
[2] => Array (
[first_name] => Zachary
[last_name] => Abend
[buid] => B00373103
[barcode] => 100291996
[student_major] => MBU
[class] => MBU2100
[seminar] => 0
[showcase] => 1
)
.
.
.
)
Như bạn có thể thấy là các dữ liệu Ví dụ, những sinh viên đã từng tham dự 1 showcase , nhưng không có hội thảo nào. Khi bảng tính này được tải xuống và mở trong Excel, bảng tính 1 hiển thị tốt, nhưng các ô hội thảo trống. Vì tôi đang sử dụng hàm fromArray() để điền bảng tính, có điều gì tôi nên làm để làm cho các số 0 đó xuất hiện đúng không?
Cảm ơn Dave! Tôi biết nó là một cái gì đó đơn giản, tôi chỉ không thể săn lùng nó. Cảm ơn bạn, cảm ơn bạn, cảm ơn bạn! – Slushman
Tôi không thể tìm thấy địa chỉ này ở bất kỳ đâu trên trang web, nhưng tìm kiếm 1 giây trên Google đã đưa ra câu hỏi này là kết quả thứ nhất. Tôi không chắc chắn nếu đó là một điều tốt cho StackOverflow hoặc một điều xấu cho tài liệu của PHPExcel. – trysis
@DaveRandom điều này không phù hợp với tôi. Tôi đang sử dụng 'phpexcel' 1.8. – Valay