工作簿和工作表的操作
概述和快速入門向導
開始(環境相關)
- 略
架構
- 略
創建一個Spreadsheet
- 從一個文件中加載一個Workbook
$inputFileName = './sampleData/example1.xls'; /** Load $inputFileName to a PHPExcel Object **/ $objPHPExcel = PHPExcel_IOFactory::load($inputFileName);
- 創建一個新的Workbook
/** Create a new PHPExcel Object **/ $objPHPExcel = new PHPExcel();
創建一個Workbook的時候總會伴隨著創建一個Worksheet
配置設置
- 略
刪除Workbook
- 因為工作簿和工作表之間的循環映射,導致想要unset一個工作簿必須按照如下步驟來操作:
$objPHPExcel->disconnectWorksheets(); unset($objPHPExcel);
Worksheets
Worksheet#
- 當實例化一個workbook的時候,會創建一個名為WorkSheet1的表
- 獲取一個workbook的worksheet數量:getSheetCount()
- 獲取workbook中的所有表的表名:getSheetNames()
- 想要接入一個打開的workbook的表格,需要使用:
// Get the second sheet in the workbook // Note that sheets are indexed from 0 $objPHPExcel->getSheet(1);
使用經驗:注意和getActiveSheet()的區別
- 如果想要使用表名來接入一個表:
$objPHPExcel->getSheetByName('Worksheet 1');
- ActiveSheet是打開電子表格的時候默認的活動表,接入活動表使用下面方法:
$objPHPExcel->getActiveSheet();
-
通過索引或者名字來更改ActiveSheet
setActiveSheetIndex() setActiveSheetIndexByName()
添加一個worksheet#
- 添加Worksheet的兩種方法
$objPHPExcel->createSheet();
或者
// Create a new worksheet called "My Data" $myWorkSheet = new PHPExcel_Worksheet($objPHPExcel, 'My Data'); // Attach the "My Data" worksheet as the first worksheet in the PHPExcel object $objPHPExcel->addSheet($myWorkSheet, 0);
- 復制worksheet
$objClonedWorksheet = clone $objPHPExcel->getSheetByName('Worksheet 1'); $objClonedWorksheet->setTitle('Copy of Worksheet 1'); $objPHPExcel->addSheet($objClonedWorksheet);
或者
$objClonedWorksheet = clone $objPHPExcel1->getSheetByName('Worksheet 1'); $objPHPExcel->addExternalSheet($objClonedWorksheet);
刪除一個Worksheet
- 刪除Worksheet
$sheetIndex = $objPHPExcel->getIndex( $objPHPExcel->getSheetByName('Worksheet 1') ); $objPHPExcel->removeSheetByIndex($sheetIndex);