首页 » SEO优化 » xlsphp技巧_phpextxlswriter导出优化筹划

xlsphp技巧_phpextxlswriter导出优化筹划

访客 2024-11-12 0

扫一扫用手机浏览

文章目录 [+]

我想大家都该当该当做过Excel导出吧,我这里把Excel导出暂时分为了三个阶段,每个阶段对应项目的不同发展阶段。
以下会对分别先容我在项目中利用过的工具以及方法。

项目环境: Mysql8.0 PHP8.0 Laravel 9.0

xlsphp技巧_phpextxlswriter导出优化筹划

幼年期

xlsphp技巧_phpextxlswriter导出优化筹划
(图片来自网络侵删)

幼年期顾名思义为我们的项目刚刚起步,这个时候我们可能不知道项目后面的走向,以及全体导出构造的数据量,以是这个时候我们常日采取最大略的办法进行导出 ,详细可以参考 Laravel-excel,这里就不做详细的先容。
该方案最大的上风便是开拓快速,不须要过多的事情量。
当然缺陷也很明显当数据超过1万条时,就会特殊慢而且占用内存也很高,随着数据越来越多,超过5万的时候基本便是不能正常事情的状态。

成长期

当我们数据业务逐步增长的时候,我们选择了一个由C编写的PHP扩展 php-ext-xlswriter,该方案须要在php环境中安装扩展,支持pecl安装。
该方案比上一个方案的优点在于,写入速率更快,而且占用内存更小。
在项目中期我们每每采取该方案就可以知足项目需求。
放一个作者的做的与PHPExcel的比拟图。

成熟期

上面两个方案都有一个问题那便是当一次性导出数据达到一定量(5万),并且数据库全体数据量比较大(300万)的时候,全体导出进程可能瓶颈就会在查询数据库以及处理数据类型等流程中。
这个时候我们为了使导出能够正常完成,可以采取利用异步导出的办法,让导出任务在后台完成,待完成之后通过邮件关照到用户,或者在网页端显示对应的提醒。
当然仅仅是异步导出也是不足的,我们还须要做分片导出。
比如一次性导出20万条数据,我们可以每次导出1万条,然后末了将20个小的导出文件合并为一个作为终极的输出。
导出跟合并在php-ext-xlswriter 都有对应的实现,开箱即用。

很多时候一个功能我们可能有很多种办理方案,但是我们须要在不同的阶段的选择最得当的办法。
选择的指标常常有。
用户习气、事情量等方面。
终极的结果须要我们在事情中与产品经理一起协商确定,千万不要做一个只会专一苦干的人哦,末了常日吃力不谄媚。

#laravel##php#

标签:

相关文章

临泾镇,历史与现代交织的乡村振兴典范

临泾镇,位于我国西北部,地处黄河上游,是一个历史悠久、文化底蕴深厚的古镇。近年来,随着乡村振兴战略的深入推进,临泾镇在传承优秀传统...

SEO优化 2024-12-23 阅读0 评论0

中语系,传承文化,培育英才

中语系,全称为中国语言文学系,是我国高等教育体系中的重要组成部分。自成立以来,中语系始终秉持“传承文化,培育英才”的宗旨,致力于培...

SEO优化 2024-12-23 阅读0 评论0

中国男性,砥砺前行,谱写时代新篇章

自古以来,中国男性在历史长河中扮演着举足轻重的角色。从农耕文明到现代社会,中国男性始终肩负着家庭、国家和社会的重任。在新时代背景下...

SEO优化 2024-12-23 阅读0 评论0