[英]PHPExcel multisheet
我有一個網站,我想用PHPExcel創建一個報告文件。 我為第一張紙制作了兩個循環,其中我有一周摘要,另一個循環用於一周中的每一天。 我用我的腳本檢索此錯誤:
Catchable fatal error: Argument 1 passed to PHPExcel_IOFactory::createWriter() must be an instance of PHPExcel, null given, called in /var/www/reports/generate_reports_settimanale.php on line 79 and defined in /var/www/inc/PHPExcel/IOFactory.php on line 132
這是我的簡化代碼:
require_once '../inc/PHPExcel.php';
require_once '../inc/PHPExcel/IOFactory.php';
objPHPExcel = new PHPExcel();
// Set document properties
$objPHPExcel->getProperties()->setCreator("Alessandro Minoccheri")
->setLastModifiedBy("Alessandro Minoccheri")
->setTitle("Office 2007 XLSX Test Document")
->setSubject("Office 2007 XLSX Test Document")
->setDescription("Generazione report inverter")
->setKeywords("office 2007 openxml php")
->setCategory("");
$row=1;
$objPHPExcel->getActiveSheet()->setCellValueByColumnAndRow('0', $row, 'Inverter');
$objPHPExcel->getActiveSheet()->setCellValueByColumnAndRow('1', $row, 'Channel');
$objPHPExcel->getActiveSheet()->setCellValueByColumnAndRow('0', 1, 'inverter');
$objPHPExcel->getActiveSheet()->setCellValueByColumnAndRow('1', 1, 'channel');
$objPHPExcel->setActiveSheetIndex(0);
$objWriter3 = PHPExcel_IOFactory::createWriter($objPHPExcel3, 'Excel5');
$week_end = date( 'Y-m-d 23:59:59', $start + ( 6 * 86400 ) );
$week_start = date( 'Y-m-d 00:00:00', $start );
$date = $week_start;
while (strtotime($date) <= strtotime($week_end)) {
$date = date ("Y-m-d", strtotime("+1 day", strtotime($date)));
$objWorkSheet = $objPHPExcel->createSheet($date); //Setting index when creating
//Write cells
$objWorkSheet->setCellValue('A1', 'Hello'.$i)
->setCellValue('B2', 'world!')
->setCellValue('C1', 'Hello')
->setCellValue('D2', 'world!');
// Rename sheet
$objWorkSheet->setTitle("test");
}
header('Content-Type: application/vnd.ms-excel');
header('Content-Disposition: attachment;filename="report.xls"');
header('Cache-Control: max-age=0');
$objWriter3->save('php://output');
我怎么解決這個問題?
$objPHPExcel->setActiveSheetIndex(0);
$objWriter3 = PHPExcel_IOFactory::createWriter($objPHPExcel3, 'Excel5');
正如錯誤所說...... $ objPHPExcel3尚不存在。 到目前為止,您只在腳本中使用了$ objPHPExcel。 你發送的是一個NULL值。 (在查看代碼時,我沒有看到你創建了一個$ objPHPExcel3)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.