PHP 高性能 Excel 扩展 1.2.7 发布

为什么使用 php-ext-excel-export

xlswriter是一个PHP C扩展,可用于在Excel 2007+ XLSX文件中写入多个工作表的文本,数字,公式和超链接。

它支持以下功能:
  • 100%兼容的Excel XLSX文件
  • 完整的Excel格式
  • 合并单元格
  • 自动筛选
  • 图表
  • 数据验证和下拉列表
  • 工作表PNG / JPEG图像
  • 用于写入大文件的内存优化模式
  • 适用于Linux,FreeBSD,OpenBSD,OS X,Windows
  • 编译为32位和64位
  • FreeBSD许可证
  • 唯一的依赖是zlib

PHP 高性能 Excel 扩展 1.2.7 发布

基准测试

测试环境:

  • Macbook Pro 13 inch
  • Intel Core i5
  • 16GB 2133MHz LPDDR3 Memory
  • 128GB SSD Storage.
导出

两种内存模式,导出100W行数据,单行27列,每个单元格19个中文字符

  • 常规模式: 耗时 29S,内存占用 2083MB;
  • 固定内存模式: 耗时 52S, 内存占用 <1MB;
读取

读取 100W 行数据,每行1列,单元格数据为int

  • 全量读取: 耗时 3S, 内存占用 558MB;
  • 游标读取: 耗时 2.8S, 内存占用 <1MB;
仓库地址

Github:https://github.com/viest/php-ext-excel-exp...

Gitee:https://gitee.com/viest/php-ext-xlswriter

PECL:https://pecl.php.net/package/xlswriter

文档

https://xlswriter-docs.viest.me

End

最后的最后请不要忘记star

本作品采用《CC 协议》,转载必须注明作者和本文链接
本帖由系统于 5年前 自动加精
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
讨论数量: 34
CodingHePing

我顶

5年前 评论

大佬牛逼 :kissing_heart:

5年前 评论
农村闲散劳动力

666

5年前 评论
sreio

厉害

5年前 评论
Epona

膜拜大佬

5年前 评论

这个可以,目前用laravel-excel导出基本信息没问题。如果数据量大有问题。就考虑换成这个扩展

5年前 评论
flyCow

看了文档,发现很多提示不支持Windows!

5年前 评论
sunrise丶 5年前
viest (楼主) 5年前

🐂 改天有空试试这个

5年前 评论

顶~期待已久的扩展终于有了 :+1:

5年前 评论
Ίκαρος

:+1:

5年前 评论

star一个 :relaxed:

5年前 评论

不知道有没有对比过,对比 输出csv 效率如何?

5年前 评论
viest (楼主) 5年前
viest (楼主) 5年前
php_learner (作者) 5年前
nfangxu

不支持读取远程文件吗

5年前 评论

厉害啊

5年前 评论
nfangxu

file

按照文档示例的代码, 当执行以下部分代码时, 会损失文件本身的数据

 $filePath = $excel->fileName($path)
            ->header($header)
            ->output();

是我的打开方式不对吗

5年前 评论
viest (楼主) 5年前
nfangxu (作者) 5年前
viest (楼主) 5年前

谢谢作者。现在读的很快,请问如果有一百万条数据要导入数据库,怎么做比较好。放在一个循环里要很久吧?这个可不可以支持读excel的特定行呀,比如把一百万的数据分块每次读1万行插入数据库

5年前 评论
viest (楼主) 5年前
littledragoner (作者) 5年前
viest (楼主) 5年前
littledragoner (作者) 5年前
littledragoner (作者) 5年前
viest (楼主) 5年前
littledragoner (作者) 5年前
viest (楼主) 5年前
jiangjun

可以插入图片就好了

5年前 评论
viest (楼主) 5年前

点赞!!! 非常的 666,就是不知道会不会长期维护下去。

5年前 评论
viest (楼主) 5年前

file
请问大佬能否出一个接口文档
比如说 fileName 第一个已第二个参数的含义
其中第二个参数 sheet1 让我摸不清楚头脑

百度excel出来了
EXCEL默认打开时有三个工作表:Sheet1、Sheet2、Sheet3,Sheet1是其中的一个工作表

5年前 评论
viest (楼主) 5年前
BugBoss

windows 下不支持读取?

5年前 评论
viest (楼主) 5年前
imapan

有没有分块导出的方法

5年前 评论
viest (楼主) 5年前
imapan (作者) 5年前
lufeijun1234

不明觉厉

5年前 评论

file

导出说格式不对,打不开,换了csv跟xls,数据却是空的,哪里姿势不对吗?

5年前 评论
viest (楼主) 5年前
viest (楼主) 5年前
snow_warm (作者) 5年前

今天试了下xls文件,发现xls读取失败,是不支持么@vikin

5年前 评论
viest (楼主) 5年前
flyrory (作者) 5年前

数组带 key 的,导出后 excel 里没内容

file

file

5年前 评论
Jea (作者) 5年前
viest (楼主) 5年前
Jea (作者) 5年前
viest (楼主) 5年前

用 array_values 后导出还是空白。。我把 users 的结果输出出来,格式和 arr 是一样的,arr 导出后有内容,而 users 导出就是空白 :disappointed_relieved:

代码:
file

输出结果:
file

导出结果:
file

5年前 评论
ben1024 4年前

按照文档的方式导出下载

file

file 找不出问题呀

5年前 评论
ben1024 4年前
一个人的江湖 4年前

速度很快,下载流程有点不习惯

测试了下 30 万数据 4 秒导出,用 golang 的 360EntSecGroup-Skylar/excelize 3 万数据要 7 秒导出

4年前 评论

大佬有个问题请教下,就是读取文件是个空数组。但是这个转成xlsx之后是可以读取的。环境是mac

file

4年前 评论
xuri

推荐一个功能丰富、兼容性好、高性能的 Excel 文档基础库:github.com/xuri/excelize

4年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!