2017-02-28 107 views
0

我試圖出口從PHP數據使用PHPExcel, 這是我的代碼,以擅長:除去不確定的「工作表」 phpexcel

public function testAction(){ 
    require_once 'PHPExcel.php'; 
    $objPHPExcel = new \PHPExcel(); 

    $objPHPExcel->getActiveSheet(); 

    $objWorkSheet = $objPHPExcel->createSheet(0); //Setting index when creating 
    $objWorkSheet->setCellValue('A1', 'Test 1') 
        ->setCellValue('B1', 'Test 2'); 

    $objWorkSheet->setTitle("Test Sheet"); 

    header('Content-Type: application/vnd.ms-excel'); 
    $filename = "test.xlsx"; // month and year should be change 
    header('Content-Disposition: attachment;filename=' . $filename . ' '); 
    header('Cache-Control: max-age=0'); 
    $objWriter = \PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); 
    $objWriter->save('php://output'); 
    exit(); 
} 

工作, 但是當我打開這個文件,我發現表「工作表」,

this is the screenshoot

我要導出的文件,沒有‘工作表’表,但我不知道在紙張來自

+0

您是否嘗試過改變,如果工作表數1個修復它? '$ objWorkSheet = $ objPHPExcel-> createSheet(1);'?或者更好的是,不要創建工作表,只需使用'getActiveSheet'來代替。 – Peon

回答

2

一個新的PHPExcel對象總是隻有一個表單,但是您還要創建一個新的(第二個)表單來填充....爲什麼不只是填充一個新的PHPExcel對象已經提供給您的單個工作表。

變化

$objPHPExcel->getActiveSheet(); 
$objWorkSheet = $objPHPExcel->createSheet(0); //Setting index when creating 

$objWorkSheet = $objPHPExcel->getActiveSheet(); 
+0

是的,它的工作,它是我第一次使用PHPExcel,謝謝@ mark –