PHP 操作 Excel - phpoffice/phpspreadsheet 扩展包
2024-09-02
74
1. PhpSpreadsheet 简介2. PhpSpreadsheet 支持的文件格式3. PhpSpreadsheet 依赖的PHP版本4. 下载(引入) PhpSpreadsheet 扩展包5. 表格的三种操作方式(应用场景)6. 获取工作薄7. 获取单元格对象的两种方式8. 获取单元格的值和坐标9. 将表格保存在服务器上10. 设置单元格
1. PhpSpreadsheet 简介
PhpSpreadsheet 是一个用纯PHP编写的库,提供了一组类。使您可以读取和写入不同电子表格文件格式,并且提供了丰富的API接口,可以设置诸多单元格以及文档属性
2. PhpSpreadsheet 支持的文件格式
列出部分常用的,更多文件支持在官网看
官方文档:https://phpspreadsheet.readthedocs.io/en/latest
xlsxlsxcsvpdf3. PhpSpreadsheet 依赖的PHP版本
PhpSpreadsheet 版本 | PHP版本 |
---|---|
v1.13.+ | v7.2+ |
v1.10.0 ~ v1.12.0 | v7.1 |
4. 下载(引入) PhpSpreadsheet 扩展包
当前最新版(v1.14.1 2020-08-21),要求PHP版本7.2.+
如果在PHP框架中需要引入该扩展包,需要在框架根目录执行该命令
composer require phpoffice/phpspreadsheet
<?php
// 引入composer自动加载文件
require 'vendor/autoload.php';
// 进行 phpoffice/phpspreadsheet 操作
5. 表格的三种操作方式(应用场景)
最常用的是 a
和 c
6. 获取工作薄
<?php
// 引入composer自动加载文件
require 'vendor/autoload.php';
use PhpOffice\PhpSpreadsheet\Spreadsheet;
// 获取Spreadsheet对象(电子表格对象)
$spreadsheet = new Spreadsheet;
// 获取活动工作薄(工作薄对象)
$sheet = $spreadsheet->getActiveSheet();
7. 获取单元格对象的两种方式
// $sheet 是工作薄对象
// 获取单元格的两种方式(返回单元格对象)
// getCell(坐标) 示例: getCell('A2')
// getCellByColumnAndRow(列数,行数) 示例: getCellByColumnAndRow(1, 2)
$test1 = $sheet->getCell('A2');
// 第一列第一行
$test2 = $sheet->getCellByColumnAndRow(1, 2);
var_dump($test1);
var_dump($test2);
8. 获取单元格的值和坐标
getValue() - 获取单元格的值
// getValue() 获取单元格的值
$cell = $sheet->getCell('A2');
$cellValue = $cell->getValue();
var_dump($cellValue);
getCoordinate() - 获取单元格的坐标
// getCoordinate() 获取单元格坐标
$cell = $sheet->getCell('A2');
$coordinate = $cell->getCoordinate();
var_dump($coordinate);//'A2'
9. 将表格保存在服务器上
<?php
// 引入composer自动加载文件
require 'vendor/autoload.php';
use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\Writer\Xlsx;
// 获取Spreadsheet对象(电子表格对象)
$spreadsheet = new Spreadsheet;
// 获取活动工作薄(工作薄对象)
$sheet = $spreadsheet->getActiveSheet();
// 设置单元格的值
$sheet->getCell('A1')->setValue('123');
// 表格保存在服务器上
$writer = new Xlsx($spreadsheet);
$writer->save('1.xlsx');
10. 设置单元格
一、setValue(单元格的值)
通过单元格对象调用,参数是单元格的值,返回单元格对象
$sheet->getCell('A1')->setValue('张三');
二、setCellValue(坐标,单元格的值)
通过工作薄对象直接调用,返回工作薄对象
$sheet->setCellValue('A1', '张三');
三、setCellValueByColumnAndRow(列数,行数,单元格的值)
通过工作薄对象直接调用,返回工作薄对象
$sheet->setCellValueByColumnAndRow(1, 1, '张三');
更新于:4个月前赞一波!
相关文章
- 【说站】mysql有哪些数据操作
- 【说站】php增量Hash函数的使用
- 【说站】php中如何配置Cookie加密
- 【说站】php命令行中进行断点
- 【说站】python中有哪些比较操作
- 【说站】php中Swoole的模块介绍
- 【说站】php文件Hash如何使用
- 【说站】php中Suhosin是什么
- 【说站】php Mhash算法的加密
- 【说站】php方法断点如何实现
- 【说站】python集合的并集操作
- 【说站】python in操作符是什么
- 【说站】python中capitalize的三种转换操作
- 【说站】java interrupt()打断阻塞的操作
- 【说站】python序列操作的整理
- 【说站】python列表操作符有哪些
- 【说站】Python测试前置操作的方法
- 分享5个开源的.NET Excel读写操作库
- JavaScript中字典的常用操作
- 【说站】python zipfile模块的文件操作
文章评论
评论问答