0
我試圖創建一個簡單的Excel文檔,其中包含一個3列的列表。 (姓,名,電子郵件地址)Kohana 3.2 + PHPExcel在寫入超過31行時創建空文檔。
當我年產量超過31行,一個空白Excel文件創建。有誰知道如何修理它?
我下面的代碼:
$guests = ORM::factory('guest')
->order_by('last_name', 'ASC')
->find_all()
->as_array();
$columns = array('first_name', 'last_name', 'email');
$objPHPExcel = new PHPExcel();
$objPHPExcel->getProperties()
->setCreator('Me')
->setLastModifiedBy('Me)
->setTitle('Guest List')
->setSubject('Guest List')
->setDescription('Title of Report, run on ' . date('m/d/Y H:i:s'));
$objPHPExcel->createSheet(0);
$objPHPExcel->setActiveSheetIndex(0);
foreach($guests as $row => $guest) {
$source = array();
$column = 0;
$next_row = $objPHPExcel->getActiveSheet()->getHighestRow();
foreach($guest->as_array() as $column_name => $data) {
if(in_array($column_name, $columns)) {
$objPHPExcel->getActiveSheet()
->setCellValueByColumnAndRow($column, $next_row+1, $data);
$column++;
// unset($data);
}
}
}
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
$this->response->body($objWriter->save('php://output'));
$this->response->send_file(TRUE, 'GuestList.xls');
首先查看錯誤消息的日誌;或在文本編輯器中打開生成的文件,查看是否有任何錯誤消息 –
我的日誌文件中沒有生成錯誤,並且生成的文件爲零字節..因此沒有錯誤。 幸運的是,我發現了一個解決方案來解決我的問題。 –
答案是將文件寫入磁盤,_ ** THEN ** _使用send_file()方法設置要下載的文件。 –