PHP讀寫Excel


PHP讀寫Excel

PHP讀寫Excel可以通過第三方庫phpexcel比較優雅地完成,由於PHP對於字符串處理的優勢,讀寫PHP非常方便。

庫導入

這里使用composer包管理工具,以下是配置信息

{
    "name": "",
    "description": "test the excel",
    "require": {
        "PHPExcel/PHPExcel":"*"   
    }
}

配置文件寫完后composer update即可完成配置

使用樣例

<?php
// include "./vendor/autoload.php";
include "./vendor/phpexcel/phpexcel/Classes/PHPExcel.php";

$objPHPExcel = new PHPExcel(); #創建Excel實例
#添加數據(指定位置修改數據)
$objPHPExcel->setActiveSheetIndex(0); //設置激活表格
#設置單元格數據
$objPHPExcel->getActiveSheet()->setCellValue("A1",'Hello');
$objPHPExcel->getActiveSheet()->setCellValue('A2', true);  
$objPHPExcel->getActiveSheet()->setCellValue('A3', false);  
$objPHPExcel->getActiveSheet()->setCellValue('B2', 'world!');  
$objPHPExcel->getActiveSheet()->setCellValue('B3', 2);  
$objPHPExcel->getActiveSheet()->setCellValue('C1', 'Hello');  
$objPHPExcel->getActiveSheet()->setCellValue('D2', 'world!');  
#循環方式添加數據
for($i=1; $i<200; $i++)
{
    $objPHPExcel->getActiveSheet()->setCellValue('A'.$i,$i);
    $objPHPExcel->getActiveSheet()->setCellValue('B'.$i,"你好");
}
#數據寫入文件
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');  
$objWriter->save('test.xlsx');  

#讀取數據
$objReader = PHPExcel_IOFactory::createReaderForFile("test.xlsx");
$objExcel = $objReader->load('test.xlsx');
$objExcel->setActiveSheetIndex(0); //選擇數據表格
var_dump($objExcel->getActiveSheet()->getCell('B1')->getValue());# string(6) "你好"
?>

注意

在瀏覽器上運行時會報錯

Warning: unlink(test.xlsx): Permission denied ······

Warning: ZipArchive::close(): Failure to create temporary file: Permission denied in ······

Fatal error: Uncaught Exception: Could not close zip file test.xlsx. in ······

因為服務器沒有權限向客戶端讀寫文件(否則簡直太可怕了)。因此該應用要在命令行中執行才可以運行

php main.php

這是一種CLI應用。


免責聲明!

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



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