前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >xls数据导出会内存溢出

xls数据导出会内存溢出

作者头像
魔王卷子
发布2019-05-31 20:45:59
7650
发布2019-05-31 20:45:59
举报

我们在后台开发的时候,经常会碰到数据导出。我们一般都是试用xls格式进行导出。但是有个问题,就是使用类库对内存的占用特别的大。结果稍微复杂一些的数据就会导致内存溢出。

那么应该如何解决呢?

其实换个思路。也就是说,如果格式不复杂的话,我们可以导出csv格式的数据。

PHP已经内置了对这个格式的处理。其中使用的函数就是:

其实使用方法很简单我就不用写范例了。就把php的示例搬过来吧。

代码语言:javascript
复制
<?php

$list = array (
    array('aaa', 'bbb', 'ccc', 'dddd'),
    array('123', '456', '789'),
    array('"aaa"', '"bbb"')
);

$fp = fopen('file.csv', 'w');

foreach ($list as $fields) {
    fputcsv($fp, $fields);
}

fclose($fp);
?>

输出的内容如下:

代码语言:javascript
复制
aaa,bbb,ccc,dddd
123,456,789
"""aaa""","""bbb"""

上面这种是写入文件的,评论第一的说的是如何直接进行输出。他的原理是写入到php的输出中。

代码语言:javascript
复制
<?php
$out = fopen('php://output', 'w');
fputcsv($out, array('this','is some', 'csv "stuff", you know.'));
fclose($out);
?>

这么一看的话,导出xls是不是就简单了很多呢。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018-08-092,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
文件存储
文件存储(Cloud File Storage,CFS)为您提供安全可靠、可扩展的共享文件存储服务。文件存储可与腾讯云服务器、容器服务、批量计算等服务搭配使用,为多个计算节点提供容量和性能可弹性扩展的高性能共享存储。腾讯云文件存储的管理界面简单、易使用,可实现对现有应用的无缝集成;按实际用量付费,为您节约成本,简化 IT 运维工作。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档