溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

PHP中為什么使用xlswriter

發(fā)布時(shí)間:2020-10-29 15:03:33 來(lái)源:億速云 閱讀:274 作者:小新 欄目:編程語(yǔ)言

PHP中為什么使用xlswriter?這個(gè)問(wèn)題可能是我們?nèi)粘W(xué)習(xí)或工作經(jīng)常見(jiàn)到的。希望通過(guò)這個(gè)問(wèn)題能讓你收獲頗深。下面是小編給大家?guī)?lái)的參考內(nèi)容,讓我們一起來(lái)看看吧!

為什么使用 xlswriter

xlswriter 是一個(gè) PHP C 擴(kuò)展,可用于在 Excel 2007+ XLSX 文件中讀取數(shù)據(jù),插入多個(gè)工作表,寫(xiě)入文本、數(shù)字、公式、日期、圖表、圖片和超鏈接。

請(qǐng)參考下方對(duì)比圖;由于內(nèi)存原因,PHPExcel 與 PHPSpreadSheet 在數(shù)據(jù)量 相對(duì)較大 的情況下無(wú)法正常工作,雖然可以通過(guò) 修改memory_limit 配置來(lái)解決內(nèi)存問(wèn)題,但完成工作的時(shí)間可能會(huì)更長(zhǎng);

PHP中為什么使用xlswriter

它支持以下功能:

一、寫(xiě)入

● 100%兼容的 Excel XLSX 文件

● 完整的 Excel 格式

● 合并單元格

● 定義工作表名稱(chēng)

● 過(guò)濾器

● 圖表

● 數(shù)據(jù)驗(yàn)證和下拉列表

● 工作表 PNG/JPEG 圖像

● 用于寫(xiě)入大文件的內(nèi)存優(yōu)化模式

● 適用于 Linux,F(xiàn)reeBSD,OpenBSD,OS X,Windows

● 編譯為 32 位和 64 位

● FreeBSD 許可證

● 唯一的依賴(lài)是 zlib

二、讀取

● 完整讀取數(shù)據(jù)

● 光標(biāo)讀取數(shù)據(jù)

● 按數(shù)據(jù)類(lèi)型讀取

1.2.8 新特性

1、新增日期寫(xiě)入

$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、新增自定義單元格數(shù)據(jù)類(lèi)型讀取

$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,
]));

基準(zhǔn)測(cè)試

測(cè)試環(huán)境:

Macbook Pro 13 inch
Intel Core i5
16GB 2133MHz LPDDR3 Memory
128GB SSD Storage.

導(dǎo)出

兩種內(nèi)存模式,導(dǎo)出 100W 行數(shù)據(jù),單行 27 列,每個(gè)單元格 19 個(gè)中文字符

● 常規(guī)模式:耗時(shí) 29S,內(nèi)存占用 2083MB;

● 固定內(nèi)存模式:耗時(shí) 52S, 內(nèi)存占用 <1MB;

讀取

讀取 100W 行數(shù)據(jù),每行 1 列,單元格數(shù)據(jù)為 int

● 全量讀?。汉臅r(shí) 3S, 內(nèi)存占用 558MB;

● 游標(biāo)讀取:耗時(shí) 2.8S, 內(nèi)存占用 <1MB;

倉(cāng)庫(kù)地址

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

最后的最后請(qǐng)不要忘記 star

感謝各位的閱讀!看完上述內(nèi)容,你們對(duì)PHP中為什么使用xlswriter大概了解了嗎?希望文章內(nèi)容對(duì)大家有所幫助。如果想了解更多相關(guān)文章內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI