Xavxls讀取 xls 文件的 PHP 擴(kuò)展
Xavxls
Xavxls 是一個(gè)讀取 xls 文件的 PHP 擴(kuò)展(暫不支持寫入)。在 PHP 開發(fā)中經(jīng)常會(huì)讀取 excel,xlsx 格式文件采用 php 直接讀取速度還可以接受,xls 格式文件就無法忍受了,一個(gè) 10M 的xls,根本就可以宣告無法讀取了,因?yàn)橄牡膬?nèi)存和 CPU 實(shí)在太大了,而且慢的無可救藥。因此,Xavxls 就應(yīng)運(yùn)而生了。
Xavxls目錄結(jié)構(gòu)
phpcpp — phpcpp 的源碼,一種采用 C++ 來快速開發(fā) PHP 擴(kuò)展的 SDK
libxls — C 語言讀取 xls 的庫
xavxls — Xavxls 項(xiàng)目源碼
為什么開發(fā) Xavxls
如果你做 PHP 開發(fā),且經(jīng)常需要讀取 xls,如果你用原生 PHP 來開發(fā),比如采用 phpexcel(一個(gè)很優(yōu)秀的PHP EXCEL 類庫),excel 文件很小還好,如果有 2M,3M,甚至 10M,你會(huì)怎么處理呢?增加 PHP 的運(yùn)行時(shí)間,防止 30 秒掛掉,增加 PHP 的內(nèi)存限制,防止讀取 excel 的時(shí)候內(nèi)存不足。PHP 運(yùn)行時(shí)間增加對(duì)整個(gè)服務(wù)的影響是很大的,為什么?因?yàn)樘幚?xls 格式比較慢,比如 10M 的 excel,默認(rèn)的內(nèi)存限制肯定是不夠用的,至少需要開到 500M 以上,時(shí)間肯定不是 10S 可以搞定的,對(duì)于一個(gè) 10 人同時(shí)訪問的網(wǎng)站來說,消耗的內(nèi)存就到達(dá)到四五G了,好恐怖吧!10 來個(gè)人的網(wǎng)站消耗就這么大!
