bin20060407
V2EX  ›  PHP

关于 php 导出 excel 最佳实现,请指点,欢迎拍砖

  •  
  •   bin20060407 · Apr 15, 2015 · 4000 views
    This topic created in 4080 days ago, the information mentioned may be changed or developed.

    用过的几种方式:
    1、csv 优点:格式简单;缺点:直接打开会有提示格式不对;如果单元格为数字,且第一位为0,打开后会丢失。
    2、xml 优点:格式简单,上面说的0丢失问题,没有。缺点:直接打开会有提示格式不对;文件体积庞大(5万条数据每行三十个字段,文件体积达到50MB)
    3、使用php pack函数生成,中文和兼容没解决(微软office可以打开,wps无法打开)
    4、phpexcel类库,生成占用内存巨大,生成一万条数据,得占用1G内存
    那么问题来了,可有更好的生成方式?

    7 replies    2015-05-05 11:03:49 +08:00
    873681136
        1
    873681136  
       Apr 15, 2015 via Android
    目前比较好的实现是php类,还有一种可以实现一个后端来帮助转换
    bin20060407
        2
    bin20060407  
    OP
       Apr 16, 2015
    @873681136 你说的php类指的是? 后端转换可指的是用其他语言转换么?
    873681136
        3
    873681136  
       Apr 16, 2015 via Android
    @bin20060407 phpexcelreader,后端可以写个python脚本来定时转换实现,当然用其它语言也没问题
    summersky92
        4
    summersky92  
       Apr 23, 2015
    fputcsv 5w条拆分开 指定读取一个数字就写入这么多到csv 默认运行时间 感觉足够了
    euzen
        5
    euzen  
       Apr 24, 2015
    我最后没办法,把服务器架在win上,用com调EXCEL生成文件了。
    bin20060407
        6
    bin20060407  
    OP
       May 5, 2015
    @summersky92 csv 伪装成excel,office打开会有提示,且单元格首位是0会丢失。
    bin20060407
        7
    bin20060407  
    OP
       May 5, 2015
    @euzen - - 我已经被逼,考虑通过其他语言实现了
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5729 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 43ms · UTC 06:07 · PVG 14:07 · LAX 23:07 · JFK 02:07
    ♥ Do have faith in what you're doing.