PHP教程:使用PHPExcel/PhpSpreadsheet处理Excel数据
接下来,我们将分别介绍如何使用PHPExcel和PhpSpreadsheet库处理Excel数据。 一、PHPExcel库 1.安装与配置 在您的PHP项目中,通过Composer安装PHPExcel库: ```bash composer require phpoffice/phpexcel ``` 2.基本操作 (1)创建一个新的Excel文件: ```php
require 'vendor/autoload.php'; use PhpOffice\PhpExcel\Cell\Cell; use PhpOffice\PhpExcel\Writer\Xlsx; $excel = new PhpOffice\PhpExcel\Workbook(); $sheet = $excel->createSheet(0); //设置表头 $headers = ['姓名', '年龄', '性别']; $columnIndex =1; foreach ($headers as $header) { 2025AI目标图像,仅供参考 $sheet->setCellValueByColumnAndRow($columnIndex,1, $header);$columnIndex++; } //填充数据 $data = [ ['张三',25, '男'], ['李四',30, '女'], ['王五',22, '男'], ]; $columnIndex =1; foreach ($data as $row) { $rowIndex =2; foreach ($row as $value) { $sheet->setCellValueByColumnAndRow($columnIndex, $rowIndex, $value); $rowIndex++; } $columnIndex++; } //保存文件 $writer = new Xlsx($excel); $writer->save('example.xlsx'); ?> ``` (2)读取Excel文件: ```php
require 'vendor/autoload.php'; use PhpOffice\PhpExcel\Reader\Xlsx; $reader = new Xlsx(); $reader->setInputFile('example.xlsx'); $sheet = $reader->getSheet(0); //获取表头 $headers = []; foreach ($sheet->getRow(1) as $cell) { $headers[] = $cell->getValue(); } //获取数据 $data = []; foreach ($sheet->getRows(2) as $row) { $rowData = []; foreach ($row as $cell) { $rowData[] = $cell->getValue(); } $data[] = $rowData; } //处理数据 foreach ($data as $key => $row) { echo "姓名:".$row[0].",年龄:".$row[1].",性别:".$row[2]." } ?> ``` 二、PhpSpreadsheet库 1.安装与配置 通过Composer安装PhpSpreadsheet库: ```bash composer require phpoffice/phpspreadsheet ``` 2.基本操作 (1)创建一个新的Excel文件: ```php
require 'vendor/autoload.php'; use PhpOffice\PhpSpreadsheet\Workbook; use PhpOffice\PhpSpreadsheet\Writer\Xlsx; $workbook = new Workbook(); $sheet = $workbook->createSheet('Sheet1'); //设置表头 $headers = ['姓名', '年龄', '性别']; foreach ($headers as $header) { $sheet->setCellValueByColumnAndRow(1,1, $header); } //填充数据 $data = [ ['张三',25, '男'], ['李四',30, '女'], ['王五',22, '男'], ]; foreach ($data as $row) { $rowIndex =2; foreach ($row as $value) { $sheet->setCellValueByColumnAndRow($rowIndex,1, $value); $rowIndex++; } } //保存文件 (编辑:广西网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |