基本介紹
軟體介紹,支持的格式,讀取,寫入,要求,PHP讀取代碼,PHP寫入代碼,
軟體介紹
PHPExcel 是用來操作Office Excel 文檔的一個PHP類庫,它基於微軟的OpenXML標準和PHP語言。可以使用它來讀取、寫入不同格式的電子表格,如 Excel (BIFF) .xls, Excel 2007 (OfficeOpenXML) .xlsx, CSV, Libre/OpenOffice Calc .ods, Gnumeric, PDF, HTML等等。
支持的格式
讀取
- BIFF 5-8 (.xls) Excel 95 版本及以上
- Office Open XML (.xlsx) Excel 2007 版本及以上
- SpreadsheetML (.xml) Excel 2003
- Open Document Format/OASIS (.ods)
- HTML
- SYLK
- CSV
寫入
- BIFF 8 (.xls) Excel 95 版本及以上
- Office Open XML (.xlsx) Excel 2007 版本及以上
- HTML
- CSV
- PDF (使用 tcPDF, DomPDF or mPDF PHP類庫, 需要單獨安裝)
要求
- PHP 5.2.0 版本及以上
- PHP extension php_zip 開啟 (如果你需要使用 PHPExcel 來操作 .xlsx .ods or .gnumeric 檔案)
- PHP extension php_xml 開啟
- PHP extension php_gd2 開啟(選填, 如果需要計算準確的列寬需要開啟此擴展)
PHP讀取代碼
//獲取上傳的excel臨時檔案$path = $_FILES["file"]["tmp_name"];//將臨時檔案移動當前目錄,可自定義存儲位置move_uploaded_file($_FILES["file"]["tmp_name"],$_FILES["file"]["name"]);//將獲取在伺服器中的Excel檔案,此處為上傳檔案名稱$path = $_FILES["file"]["name"];//調用readExcel函式返回一個二維數組$exceArray = readExcel($path);//創建一個讀取excel函式function readExcel($path){ //引入PHPExcel類庫 include 'Classes/PHPExcel.php'; include 'Classes/PHPExcel/IOFactory.php'; $type = 'Excel5';//設定為Excel5代表支持2003或以下版本,Excel2007代表2007版 $xlsReader = \PHPExcel_IOFactory::createReader($type); $xlsReader->setReadDataOnly(true); $xlsReader->setLoadSheetsOnly(true); $Sheets = $xlsReader->load($path); //開始讀取上傳到伺服器中的Excel檔案,返回一個二維數組 $dataArray = $Sheets->getSheet(0)->toArray(); return $dataArray;}
PHP寫入代碼
//設定PHPExcel類庫的include pathset_include_path('.'. PATH_SEPARATOR .'D:\Zeal\PHP_LIBS' . PATH_SEPARATOR .get_include_path());* 以下是使用示例,對於以 //// 開頭的行是不同的可選方式,請根據實際需要* 打開對應行的注釋。* 如果使用 Excel5 ,輸出的內容應該是GBK編碼。//設定文檔基本屬性$objProps = $objExcel->getProperties();$objProps->setCreator("Zeal Li"); //設定作者//合併單元格$objActSheet->mergeCells('B1:C22');//分離單元格$objActSheet->unmergeCells('B1:C22');//*************************************//設定單元格樣式////設定寬度$objActSheet->getColumnDimension('B')->setAutoSize(true);$objActSheet->getColumnDimension('A')->setWidth(30);$objStyleA5 = $objActSheet->getStyle('A5');//設定單元格內容的數字格式。);$objDrawing = new PHPExcel_Worksheet_Drawing();$objDrawing->setName('ZealImg');