更新了!更新了!PHP 高性能 Excel 扩展

此次更新主要针对 Windows 进行了适配,Windows 下的小伙伴此处应该有掌声 :clap: ,加入了固定内存模式导出,老板再也不用担心买内存的钱不够用了!!!!!

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

此处拿PHPOffice作为对比对象,使用相同的方式进行导出(逐行写入),在数据相同的情况下,PHPOffice 在2W时,因内存不够而停止了,而 php-ext-excel-export 在固定内存模式下,轻松惬意的完成了导出工作,详情对比数据看下图:

file

固定内存模式

最大使用内存 = 最大单行数据量

$fileObject = $excel->constMemory('tutorial01.xlsx');

为单元格设置格式

$config = ['path' => './tests'];
$excel  = new \Vtiful\Kernel\Excel($config);

// 普通模式
$fileObject = $excel->fileName('tutorial01.xlsx');
// 或 固定内存模式
$fileObject = $excel->constMemory('tutorial01.xlsx');

$fileHandle = $fileObject->getHandle();

$boldStyle = \Vtiful\Kernel\Format::bold($fileHandle);

$fileObject->header(['name', 'age'])
    ->data([['viest', 21]])
    ->setColumn($boldStyle, 'A:A', 200)
    ->output();

Github

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

旧贴传送

本帖已被设为精华帖!
本帖由系统于 5年前 自动加精
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
讨论数量: 19

@Noober Phper 啊哈,哈哈哈!

6年前 评论
fatrbaby

牛批

5年前 评论
lmaster

@vikin 好东西,那怎么导入 excel ,场景:我有一个大文件 excel 里面有3w 条数据,我怎么把它“读”到 php 中,比如放入一个数组

5年前 评论

@lmaster 导入文件的功能我本地已经完成了, :joy: 但是我觉得可能合并在这个扩展内有点别扭........毕竟重点是导出

5年前 评论
fatrbaby

@lmaster php generator

5年前 评论

请问,如果导出多表的话,有例子吗

5年前 评论

@hxzlhby 功能建议可以 https://github.com/viest/php-ext-excel-exp... 提 issues,我需要你的建议!

5年前 评论

@hxzlhby 又更新了一下,请看下面示例;

$config = [
    'path' => './filePath'
];

$excel = new \Vtiful\Kernel\Excel($config);

// 此处会自动创建一个表格
$fileObject = $excel->fileName("tutorial01.xlsx");

$fileObject->header(['name', 'age'])
    ->data([['viest', 21]]);

// 向文件中追加一个表格
$fileObject->addSheet('twoSheet')
    ->header(['name', 'age'])
    ->data([['vikin', 22]]);

// 最后的最后,输出文件
$filePath = $fileObject->output();
5年前 评论

@hxzlhby 请拉取GIT仓库最新代码安装哦,PECL 将于5月26日更新.

5年前 评论
lmaster

@vikin 可否这个样子,你在来个导入 excel 库。因为 处理 excel 基本就是导入 excel 数据“存”进数据库,和将数据库数据“存”入 excel ,这好比一个水池,我们只让他出水不进水,是不是很怪 :blush:

5年前 评论

@lmaster 哈哈哈,好形象的例子。近期忙着其他项目,导入库肯定要做,请君静候佳音 :+1:

5年前 评论

@vikin 大神这个不能再队列中使用吗?提示找不到这个类

5年前 评论

@vikin 扩展装了,正常使用是可以用的,但是在队列中使用就出这个提示

5年前 评论

@一墨染尽青衣颜 CLI 检查一下,php -m看有没有扩展

5年前 评论

@vikin 额,之前的扩展是excel_writer,新的是xlswriter,搞定了 :joy: :joy:

5年前 评论

不存储直接下载能吗

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

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