[xlswriter] PHP 高效能 Excel 擴充套件完全適配 Windows,與 PHPSpreadSheet、PHP_XLSXWriter 對比,記憶體、時間雙碾壓!

vikin發表於2020-04-12

【xlswriter】PHP 高效能 Excel 擴充套件已適配 Windows

xlswriter是一個 PHP C 擴充套件,可用於在 Excel 2007+ XLSX 檔案中讀取資料,插入多個工作表,寫入文字、數字、公式、日期、圖表、圖片和超連結。

它具備以下特性:

一、寫入
  • 100%相容的Excel XLSX檔案
  • 完整的Excel格式
  • 合併單元格
  • 定義工作表名稱
  • 過濾器
  • 圖表
  • 資料驗證和下拉選單
  • 工作表PNG/JPEG影像
  • 用於寫入大檔案的記憶體優化模式
  • 適用於Linux,FreeBSD,OpenBSD,OS X,Windows
  • 編譯為32位和64位
  • FreeBSD許可證
  • 唯一的依賴是zlib
二、讀取
  • 完整讀取資料
  • 游標讀取資料
  • 按資料型別讀取
  • xlsx 轉 CSV

先感謝網友提供資料

測試資料:20列,每列長度為19英文字母

Xlswriter

行數(萬) 常規模式記憶體(MB) 常規模式耗時(S) 固定記憶體模式記憶體(MB) 固定記憶體模式耗時(S)
0.1 12.57 0.056 <1 0.0896
0.3 16.42 0.104 <1 0.1664
0.5 18.82 0.175 <1 0.28
1 29.35 0.36 <1 0.576
5 127.87 1.806 <1 2.8896
10 251.91 3.576 <1 5.7216
15 376.98 5.316 <1 8.5056
20 499.94 7.012 <1 11.2192

PHPSpreadSheet

行數(萬) 記憶體(MB) 耗時(S)
0.1 11.31 0.632
0.3 28.51 1.271
0.5 48.47 2.219
1 95.58 4.443
5 457.94 24.003
10 914.52 52.824
15 1437.11 104.306
20 1827.69 130.093

PHP_XLSXWriter

行數(萬) 記憶體(MB) 耗時(S)
0.1 5.55 0.213
0.3 5.55 0.627
0.5 5.47 1.035
1 5.27 2.066
5 5.51 10.373
10 5.37 20.557
15 5.42 31.328
20 5.35 41.505

Unix

pecl install xlswriter

Windows

download dll

Github:https://github.com/viest/php-ext-excel-exp...

Gitee:https://gitee.com/viest/php-ext-xlswriter

PECL:https://pecl.php.net/package/xlswriter

https://xlswriter-docs.viest.me

最後的最後請不要忘記 star

本作品採用《CC 協議》,轉載必須註明作者和本文連結

相關文章