edk24

edk24

awsl
🏢  独立开发者
V2EX 第 317536 号会员,加入于 2018-05-21 04:02:54 +08:00
今日活跃度排名 30051
32 S 85 B
233
简单 Excel 导入导出库, 欢迎使用和提意见
PHP  •  edk24  •  158 天前  •  最后回复来自 codebs
17
各位大佬 请教一个 PHP 记录 api 日志的问题
PHP  •  edk24  •  2022-04-01 13:52:48 PM  •  最后回复来自 markgor
12
mysql 四百万左右数据 count(*) 49 秒才响应,求助大佬怎么优化?
  •  1   
    MySQL  •  edk24  •  2021-08-02 17:26:10 PM  •  最后回复来自 ivanMeng
    55
    求 sql 优化才几万数据查询都破 1s 了
    MySQL  •  edk24  •  2021-06-11 16:12:24 PM  •  最后回复来自 edk24
    15
    大佬们, mysql 五百万以上的 join left 关联查询统计很慢 怎么操作
    MySQL  •  edk24  •  2021-06-11 21:45:32 PM  •  最后回复来自 xuanbg
    26
    vue v-for 循环嵌套报错问题,请大佬闷帮忙看看
    Vue.js  •  edk24  •  2021-06-03 14:59:02 PM  •  最后回复来自 lovecy
    9
    求助 ubuntu 20.04 一天崩一两次显示器无信号,机器仍在运行
    Linux  •  edk24  •  2021-04-30 22:56:47 PM  •  最后回复来自 edk24
    20
    基于一份代码修改的程序, 怎么同步提交?
    git  •  edk24  •  2021-01-04 14:37:36 PM  •  最后回复来自 faqqcn
    19
    求助! PHP -fpm 并发配置
    PHP  •  edk24  •  2021-02-25 14:33:57 PM  •  最后回复来自 edk24
    30
    edk24 最近回复了
    @daolanfler 我现在就是这样做的了, dispatch 更新时, 一边维护原有的数据, 一边记录本次的 car

    然后在组件中使用 useSelector + useEffect 来 watch 车辆的更新
    @chnwillliu useSelector 如何得到差集呢, 主要是要差集

    然后在地图上差异的更新点位, 而不是全部删了 又全部重新打点

    statue: {
    car:[]
    }

    拿到 car 变化的数据, 例如原本是 [1,2,3,4,5], 更新了 2 条 [1,4,3,4,6], 我要拿到 [4,6]
    nps 用过比较稳定, 缺点好像是不支持 ws 协议还是什么的忘记了
    在你的 ssh_config 里面加入

    `RemoteForward 1087 127.0.0.1:1087`

    举例, 把本地的 1087 端口共享给服务器的 1087 端口.

    然后你就可以在服务器上用`export all_proxy=http://127.0.0.1:1087` 实现代理, 为了方便可以包装两个 alias 放到 bashrc 文件里面

    ```
    # 为终端设置代理
    alias proxy='export all_proxy=http://127.0.0.1:1087'
    alias unproxy='unset all_proxy'
    ```
    159 天前
    回复了 edk24 创建的主题 PHP 简单 Excel 导入导出库, 欢迎使用和提意见
    @codebs 这个可以有,常用的架构都编译来放着。 问一个问题比如 php7.x 和 php8.x 都可以用同一个编译的 so 库吗?
    cpu 架构一致的情况下
    159 天前
    回复了 edk24 创建的主题 PHP 简单 Excel 导入导出库, 欢迎使用和提意见
    @Xinu 确实,我在做 100000row and 100column 时,4G 内存都不够 `PhpSpreadsheet` 吃。 csv 我还是依靠 fputcsv 实现可用的, 但也会占到 1.6GB 左右(全部读取存变量, 可能回调处理每一行效果更优)。

    我这个库还是关注易用性方面吧 😭,无需安装三方扩展 composer 一句话安装, 一行代码搞定导出 也算是个小优点。
    159 天前
    回复了 edk24 创建的主题 PHP 简单 Excel 导入导出库, 欢迎使用和提意见
    @maigebaoer 多谢大佬的关注,上面有测试 10w 行 100 列的测试结果。 已经是优化后 csv 的结果了。

    这个库的初衷是为了能快速的实现导入导出功能, 易用性是我主要关注的内容,十万左右数据量足够覆盖大多数场景了。 字段少一点的话 100w 估计也挺快的, 问题就是内存占用会比较大。

    csv 是靠 fgetcsv 实现的,这个是 php 原生提供的,优化的空间我能想到的就是使用回调来读取每一行处理。这样可以减少内存的使用。

    对性能速度内存有特殊要求的话,我更推荐上面朋友们推荐的 xlswriter , 使用也比较简单 速度快 内存占用低。 只是需要安装扩展来实现。
    159 天前
    回复了 edk24 创建的主题 PHP 简单 Excel 导入导出库, 欢迎使用和提意见
    @manhere 这个库考虑的是单表数据的导入与导出, 这个场景最多。宗旨是简单使用,快速实现导入导出数据的功能。

    如果涉及多工作表就会变得复杂起来,这样更推荐 PhpSpreadsheet 高度 diy

    谢谢你的反馈,回头我把涉及多工作表无法实现的内容写到 README 中
    159 天前
    回复了 edk24 创建的主题 PHP 简单 Excel 导入导出库, 欢迎使用和提意见
    @ShineyWang

    我这个库依赖的 PhpSpreadsheet ,test100000row_and_100column 内存和耗时消耗都巨大,为此我优化了 csv 部分

    足够跑通导出导入,但需要提前组装数据或一次性返回数据。 对内存的占用略高一点( 1.6GB)。 速度还行


    This test printed output: CSV => 100000 行 100 列导出: 耗时:0.980793 sec

    This test printed output: CSV => 100000 行 100 列导入: 耗时:3.367294 sec


    哈哈等我回过头编写 README 准备推荐 `xlswriter` 和 `swiftexcel` 的时候才发现 `swiftexcel` 是 C# 的库。
    159 天前
    回复了 edk24 创建的主题 PHP 简单 Excel 导入导出库, 欢迎使用和提意见
    @ShineyWang 还没有做性能测试, 依赖 PhpSpreadsheet 实现的. 目前就我和我朋友在一些小项目中使用;

    看来大家都比较在意大量数据的处理性能和速度, 回头做一个。 谢谢你的建议
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3102 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 13:48 · PVG 21:48 · LAX 05:48 · JFK 08:48
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.