我们经常会使用phpExcel导入或导入xls文件,但是如果一次导出数据比较大就会出现内存溢出错误,下面我来总结解决办法。
phpExcel将读取的单元格信息保存在内存中,我们可以通过
代码如下 | 复制代码 |
PHPExcel_Settings::setCacheStorageMethod() |
来设置不同的缓存方式,已达到降低内存消耗的目的!
1、将单元格数据序列化后保存在内存中
代码如下 | 复制代码 |
PHPExcel_CachedObjectStorageFactory::cache_in_memory_serialized; |
2、将单元格序列化后再进行Gzip压缩,然后保存在内存中
代码如下 | 复制代码 |
PHPExcel_CachedObjectStorageFactory::cache_in_memory_gzip; |
3、缓存在临时的磁盘文件中,速度可能会慢一些
代码如下 | 复制代码 |
PHPExcel_CachedObjectStorageFactory::cache_to_discISAM; |
4、保存在php://temp
代码如下 | 复制代码 |
PHPExcel_CachedObjectStorageFactory::cache_to_phpTemp; |
5、保存在memcache中
PHPExcel_CachedObjectStorageFactory::cache_to_memcache
举例:
第4中方式:
代码如下 | 复制代码 |
$cacheMethod = PHPExcel_CachedObjectStorageFactory:: cache_to_phpTemp; |
第5种:
代码如下 | 复制代码 |
$cacheMethod = PHPExcel_CachedObjectStorageFactory::cache_to_memcache; |
其它的方法
第一个方法,你可以考虑生成多个sheet的方式,不需要生成多个excel文件,根据你数据总量计算每个sheet导出多少行, 下面是PHPExcel生成多个sheet方法:
面是PHPExcel生成多个sheet方法:
代码如下 | 复制代码 |
$sheet = $objPHPExcel->getActiveSheet(); $sheet->setCellValue('A1',$x); $sheet->setCellValue('B1',$y); |
第二个方法,你可以考虑ajax来分批导出,不用每次刷新页面。
代码如下 | 复制代码 |
$('#export').click(function() { $.ajax({ url: "export.php", data: getData(), //这个地方你也可以在php里获取,一般读数据库 success: function(response){ window.location.href = response.url; } })
}); |
代码如下 | 复制代码 |
//export.php $data = $_POST['data']; $xls = new PHPExcel(); $xls->loadData($formattedData); $xls->exportToFile('excel.xls'); $response = array( 'success' => true, 'url' => $url );
echo json_encode($response); ?> |
数据量很大的话,建议采用第二种方法,ajax来导出数据,上面方法简单给了个流程,具体你自己补充!

听歌是一件很常见的事情,相信无论在哪里,很多朋友都会做。你平常用来听歌的软件是什么呢?是不是像我一样使用QQ音乐?我目前就是用QQ音乐来听歌,而且不仅可以在手机上用,还可以在Mac电脑上使用。除了在线听歌,我们还可以把QQ音乐中喜欢的歌曲下载到电脑上。不过,Mac版QQ音乐下载的歌曲不是我们需要的格式,我们需要的是MP3格式的音乐,那么如何将Mac版QQ音乐下载的歌曲导出为MP3格式呢?如何将在Mac版QQ音乐下载的歌曲导出并转换为MP3格式?如果您想将Mac版QQ音乐下载的歌曲导出并转换为MP

随着社交媒体的不断兴起,抖音作为一款备受欢迎的短视频平台,吸引了大量用户的青睐。在抖音上,用户不仅可以展示自己的生活,还能与其他用户进行互动。在这种互动中,表情包逐渐成为用户们表达情感的重要方式。一、抖音私信表情包怎么弄到微信?首先,要在抖音平台上获取私信表情包,需要登录抖音账号,然后浏览并选择喜欢的表情包,可以选择发送给好友或自己收藏。在抖音收到表情包后,可以通过私信界面长按该表情包,然后选择“添加到表情”功能。这样,就可以将这个表情包添加到抖音的表情库中。3.接下来,我们需要将抖音表情库中的

xmind是一款非常实用的思维导图软件,它是利用人们的思维和灵感制作出来的导图形式,我们在制作完xmind文件通常会把它转换成pdf文件格式,以方便大家传播使用,那么xmind文件怎么导出为pdf文件呢?下面就是具体操作步骤可以供大家参考。1.首先我们来演示一下如何导出思维导图为PDF文档。选择【文件】-【导出】功能按钮。2.在新出现的界面中选择【PDF文档】并点击【下一步】按钮。3.在导出界面选择设置:纸张尺寸、方向、分辨率和文档存储位置。完成设置后点击【完成】按钮。4.如果点击【完成】按钮后

iPhone中的通话记录经常被低估,并且是iPhone最关键的功能之一。凭借其简单性,此功能具有至关重要的意义,可以提供有关在设备上拨打或接听的呼叫的重要见解。无论是出于工作目的还是法律诉讼,访问通话记录的能力都被证明是无价的。简单来说,通话记录是指每当拨打或接听电话时在iPhone上创建的条目。这些日志包含关键信息,包括联系人的姓名(如果未另存为联系人,则为号码)、时间戳、持续时间和呼叫状态(已拨打、未接或未接听)。它们是您的通信历史记录的简明记录。通话记录包括存储在iPhone上的通话记录条

钉钉如何导出考勤数据?在钉钉中是可以到处考勤数据的,但是多数的用户不知道如何到处考勤数据,接下来就是小便为用户带来的钉钉导出考勤数据方法图文教程,感兴趣的玩家快来一起看看吧!钉钉如何导出考勤数据1、首先打开钉钉APP进入主页面,最底部【工作台】图标点击;2、然后在工作台页面,点击【考勤打卡】按钮;3、之后在下图所示的功能页,最底部【统计】功能点击进入专区;4、接着在统计页面,左上角【导出报表】功能;5、最后在考勤报表页面点击下方蓝色的【导出报表】即可完成。

完全指南:如何使用PHP扩展PHPExcel处理Excel文件引言:在处理大量数据和统计分析时,Excel文件经常被用作数据存储和交换的一种常见格式。使用PHP扩展PHPExcel,我们可以轻松地读取、写入和修改Excel文件,从而有效地处理Excel数据。本文将介绍如何使用PHP扩展PHPExcel来处理Excel文件,并提供代码示例。一、安装PHPExc

随着数字化时代的到来,数据已经成为了我们日常生活和工作中最重要的一部分,而Excel文件则成为数据处理的重要工具之一。相信很多PHP开发者也会在工作中经常遇到使用Excel文件进行数据处理和操作的情况。本文将为大家介绍使用PHPExcel库来处理Excel文件的方法和注意事项。什么是PHPExcel?PHPExcel是一个PHP类

浏览器缓存的视频怎么导出来随着互联网的快速发展,视频已经成为人们日常生活中不可或缺的一部分。而在浏览网页时,我们常常会遇到想要保存或分享的视频内容,但是有时候我们却无法找到视频文件的来源,因为它们可能只存在于浏览器的缓存中。那么,如何导出浏览器缓存中的视频呢?本文将为您介绍几种常用的方法。首先,我们需要明确一个概念,即浏览器缓存。浏览器缓存是浏览器为了提高用


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

Atom编辑器mac版下载
最流行的的开源编辑器

Dreamweaver Mac版
视觉化网页开发工具

安全考试浏览器
Safe Exam Browser是一个安全的浏览器环境,用于安全地进行在线考试。该软件将任何计算机变成一个安全的工作站。它控制对任何实用工具的访问,并防止学生使用未经授权的资源。

DVWA
Damn Vulnerable Web App (DVWA) 是一个PHP/MySQL的Web应用程序,非常容易受到攻击。它的主要目标是成为安全专业人员在合法环境中测试自己的技能和工具的辅助工具,帮助Web开发人员更好地理解保护Web应用程序的过程,并帮助教师/学生在课堂环境中教授/学习Web应用程序安全。DVWA的目标是通过简单直接的界面练习一些最常见的Web漏洞,难度各不相同。请注意,该软件中

mPDF
mPDF是一个PHP库,可以从UTF-8编码的HTML生成PDF文件。原作者Ian Back编写mPDF以从他的网站上“即时”输出PDF文件,并处理不同的语言。与原始脚本如HTML2FPDF相比,它的速度较慢,并且在使用Unicode字体时生成的文件较大,但支持CSS样式等,并进行了大量增强。支持几乎所有语言,包括RTL(阿拉伯语和希伯来语)和CJK(中日韩)。支持嵌套的块级元素(如P、DIV),