您好,登錄后才能下訂單哦!
PHP中為什么使用xlswriter?這個問題可能是我們日常學習或工作經常見到的。希望通過這個問題能讓你收獲頗深。下面是小編給大家帶來的參考內容,讓我們一起來看看吧!
為什么使用 xlswriter
xlswriter 是一個 PHP C 擴展,可用于在 Excel 2007+ XLSX 文件中讀取數據,插入多個工作表,寫入文本、數字、公式、日期、圖表、圖片和超鏈接。
請參考下方對比圖;由于內存原因,PHPExcel 與 PHPSpreadSheet 在數據量 相對較大 的情況下無法正常工作,雖然可以通過 修改memory_limit 配置來解決內存問題,但完成工作的時間可能會更長;
它支持以下功能:
一、寫入
● 100%兼容的 Excel XLSX 文件
● 完整的 Excel 格式
● 合并單元格
● 定義工作表名稱
● 過濾器
● 圖表
● 數據驗證和下拉列表
● 工作表 PNG/JPEG 圖像
● 用于寫入大文件的內存優化模式
● 適用于 Linux,FreeBSD,OpenBSD,OS X,Windows
● 編譯為 32 位和 64 位
● FreeBSD 許可證
● 唯一的依賴是 zlib
二、讀取
● 完整讀取數據
● 光標讀取數據
● 按數據類型讀取
1.2.8 新特性
1、新增日期寫入
$config = [ 'path' => './tests' ]; $fileObject = new \Vtiful\Kernel\Excel($config); $fileObject = $fileObject->fileName('tutorial.xlsx'); $filePath = $fileObject->header(['date']) ->insertDate(1, 0, time(), 'mmm d yyyy hh:mm AM/PM') ->output();
2、新增自定義單元格數據類型讀取
$config = [ 'path' => './tests', ]; $fileObject = new \Vtiful\Kernel\Excel($config); $fileObject->openFile('tutorial.xlsx') ->openSheet(); var_dump($fileObject->nextRow([ \Vtiful\Kernel\Excel::TYPE_STRING, \Vtiful\Kernel\Excel::TYPE_TIMESTAMP, ]));
基準測試
測試環境:
Macbook Pro 13 inch Intel Core i5 16GB 2133MHz LPDDR3 Memory 128GB SSD Storage.
導出
兩種內存模式,導出 100W 行數據,單行 27 列,每個單元格 19 個中文字符
● 常規模式:耗時 29S,內存占用 2083MB;
● 固定內存模式:耗時 52S, 內存占用 <1MB;
讀取
讀取 100W 行數據,每行 1 列,單元格數據為 int
● 全量讀取:耗時 3S, 內存占用 558MB;
● 游標讀取:耗時 2.8S, 內存占用 <1MB;
倉庫地址
Github:https://github.com/viest/php-ext-excel-export
Gitee:https://gitee.com/viest/php-ext-xlswriter
PECL:https://pecl.php.net/package/xlswriter
文檔
https://xlswriter-docs.viest.me
End
最后的最后請不要忘記 star
感謝各位的閱讀!看完上述內容,你們對PHP中為什么使用xlswriter大概了解了嗎?希望文章內容對大家有所幫助。如果想了解更多相關文章內容,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。