使用PHP Excel類讀取和生成excel文件


使用PHP來生成Excel的方法有很多,比如使用最簡單的回車符,制表符來生成,或者直接使用html 的table格式,但這些方式兼容性都有所欠缺。測試了一下PHPExce類,發現太l強大了,可以輸出非常復雜的excel表格,另外說一下還可以讀取 Excel文件。閑話少說,放出簡要代碼:

<?php
require_once './Classes/PHPExcel.php';  

$objExcel = new PHPExcel();  
$objWriter = new PHPExcel_Writer_Excel5($objExcel);     // 用於其他版本格式  
$objExcel->setActiveSheetIndex(0);  
$objActSheet = $objExcel->getActiveSheet();  
//設置當前活動sheet的名稱  

$objActSheet->setTitle('sheet1');  

$objActSheet->setCellValue('A2', '中國11');  // 設置Excel中的內容  A2表示坐標

//生成excel到文件  
//$objWriter->save('./test.xls');  
//或者直接瀏覽器下載   (任選其一)
$outputFileName = "output.xls";
header("Content-Type:application/octet-stream;charset=utf-8");
header('Content-Disposition: attachment; filename=' . $outputFileName);
$objWriter->save('php://output');
?>

 

另外還可以讀取Excel文件,示例代碼

  1. <?php
  2. $xlsPath './test.xls'//指定要讀取的exls路徑 
  3. //$type = 'Excel2007'; //設置要解析的Excel類型 Excel5(2003或以下版本)或Excel2007
  4. $type 'Excel5';
  5. //引入excel類
  6. include 'Classes/PHPExcel.php';            
  7. include 'Classes/PHPExcel/IOFactory.php';
  8. $xlsReader PHPExcel_IOFactory::createReader($type);  
  9. $xlsReader->setReadDataOnly(true);
  10. $xlsReader->setLoadSheetsOnly(true);
  11. $Sheets $xlsReader->load($xlsPath);
  12. //開始讀取
  13. $Sheet $Sheets->getSheet(0)->toArray(); //讀取第一個工作表(注意編號從0開始) 如果讀取多個可以做一個循環0,1,2,3....

  14. //得到二維數組,每個小數組是excel表格內容的一行 里面包含此行的每列的數據  
  15. echo '<pre>';
  16. print_r($Sheet);
  17. ?>

下面給出示例文件以及Excel類

 下載PHPExcel類及示例文件


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM