PHP Excel是PHP編程語言所支持的一種用于生成和讀取Excel文件的庫。通過這個庫,開發者可以很方便地創建、編輯、保存和讀取Excel文件,不僅提高了編碼效率,而且也大大拓展了PHP應用的應用范圍。
PHP Excel的使用方法非常簡單易懂,下面就以一些簡單的示例來展示它的使用。
要創建一個新的Excel文件,可以先創建一個Workbook對象,并添加一個Worksheet到其中。例如:
// 加載PHPExcel require_once 'PHPExcel.php'; // 創建Workbook對象 $workbook = new PHPExcel(); // 添加Worksheet $worksheet = $workbook->getActiveSheet();添加Worksheet的過程中,可以通過Worksheet對象的屬性設置一些基本信息,如Worksheet的標題、Header和Footer等。例如:
// 設置標題 $title = 'My Worksheet'; $worksheet->setTitle($title); // 設置Header $header = array( 'text' =>'My Site', 'font' =>array( 'size' =>14, 'color' =>array('rgb' =>'4477CC') ) ); $worksheet->getHeaderFooter()->setFirstHeader('&L&G&T' . $header['text']); // 設置Footer $footer = array( 'text' =>'Page &P of &N', 'font' =>array( 'size' =>10, 'color' =>array('rgb' =>'999999') ) ); $worksheet->getHeaderFooter()->setFirstFooter('&L' . $footer['text']);在Worksheet中添加數據可以通過setCellValueByColumnAndRow方法實現。例如:
// 設置表頭 $header = array('ID', 'Name', 'Age', 'Gender'); $column = 0; foreach ($header as $value) { $worksheet->setCellValueByColumnAndRow($column, 1, $value); $column++; } // 添加數據 $data = array( array(1, 'Tom', 18, 'Male'), array(2, 'Lucy', 19, 'Female'), array(3, 'James', 20, 'Male'), array(4, 'Lily', 21, 'Female') ); $row = 2; foreach ($data as $rowdata) { $column = 0; foreach ($rowdata as $value) { $worksheet->setCellValueByColumnAndRow($column, $row, $value); $column++; } $row++; }設置單元格的格式可以使用PHPExcel_Style類。例如:
// 創建Style對象 $style = new PHPExcel_Style(); // 設置字體 $font = array( 'name' =>'Verdana', 'size' =>10 ); $style->getFont()->setFromArray($font); // 設置背景顏色 $bg = array( 'type' =>PHPExcel_Style_Fill::FILL_SOLID, 'color' =>array('rgb' =>'F6F6F6') ); $style->getFill()->setFillType($bg['type']); $style->getFill()->getStartColor()->setRGB($bg['color']); // 設置邊框 $border = array( 'style' =>PHPExcel_Style_Border::BORDER_THIN, 'color' =>array('rgb' =>'999999') ); $style->getBorders()->getTop()->setBorderStyle($border['style']); $style->getBorders()->getTop()->getColor()->setRGB($border['color']); $style->getBorders()->getRight()->setBorderStyle($border['style']); $style->getBorders()->getRight()->getColor()->setRGB($border['color']); $style->getBorders()->getBottom()->setBorderStyle($border['style']); $style->getBorders()->getBottom()->getColor()->setRGB($border['color']); $style->getBorders()->getLeft()->setBorderStyle($border['style']); $style->getBorders()->getLeft()->getColor()->setRGB($border['color']); // 應用Style $worksheet->getStyle('A1:D1')->applyFromArray($style); $worksheet->getStyle('A2:D5')->applyFromArray($style);最后,通過使用PHPExcel_IOFactory類,我們可以將生成的Excel文件保存到本地。例如:
// 創建Writer對象,并保存Excel文件 $writer = PHPExcel_IOFactory::createWriter($workbook, 'Excel2007'); $filename = 'mydata.xlsx'; $writer->save($filename);除了創建Excel文件外,PHP Excel還提供了很多用于讀取和編輯Excel文件的API。例如可以使用PHPExcel_IOFactory::load方法讀取Excel文件,使用PHPExcel_Cell類讀取和編輯單元格等。PHP Excel的API非常豐富,使開發者無須使用其他語言、其他軟件就可以輕松生成和讀取Excel文件。 在Web開發中,Excel文件被廣泛用于數據的導入導出。PHP Excel庫極大地提高了PHP的應用范圍,使得PHP編程在數據處理領域的實用性和效率大大提高。