當(dāng)前位置:博客首頁>>PHP >> 閱讀正文

簡單強(qiáng)大的php讀取excel類:Spreadsheet_Excel_Reader

作者: 鄭曉 分類: PHP 發(fā)布于: 2013-01-15 18:24 瀏覽:46,680 評(píng)論(17)


之前使用php導(dǎo)入excel的表格數(shù)據(jù)時(shí)都是使用php內(nèi)置的fgetcsv()函數(shù),即把要導(dǎo)入的文件先用excel另存為.csv格式,再用fgetcsv函數(shù)循環(huán)讀取,稍微有些累,不過還可以實(shí)現(xiàn)一些基本的導(dǎo)入操作。

$handle = fopen('data.csv','r');
while($row = fgetcsv($handle,1000)) {
$array[] = $row;
}

有點(diǎn)像使用mysql,先讀取出資源,再fetch_array。今天從一朋友那里發(fā)現(xiàn)了一個(gè)比較強(qiáng)大、使用簡單的類庫來實(shí)現(xiàn)直接.xls文件的導(dǎo)入:Spreadsheet_Excel_Reader。

include('/Excel/reader.php'); //引入類庫,類的配置文件已經(jīng)被此文件引入
$data = new Spreadsheet_Excel_Reader();
$data->setOutputEncoding('UTF-8'); //設(shè)置輸出的編碼為utf8
$data->read('data.xls'); //要讀取的excel文件地址
echo '

';
print_r($data->sheets[0]); //打印輸出sheet數(shù)組。

友情提示:這只是默認(rèn)表格只有一個(gè)工作表的情況,有多張工作時(shí)使用$data->sheets[1]、$data->sheets[2]... 僅限字段為純文本的表格,如果包含日期等特殊字段的話可能會(huì)有問題,我也沒試過,需要你自己去測試。
類文件和DEMO

? ? ? ?

本文采用知識(shí)共享署名-非商業(yè)性使用 3.0 中國大陸許可協(xié)議進(jìn)行許可,轉(zhuǎn)載時(shí)請(qǐng)注明出處及相應(yīng)鏈接。

本文永久鏈接: http://www.yjfs.org.cn/spreadsheet-excel-reader-php-read-excel.html

簡單強(qiáng)大的php讀取excel類:Spreadsheet_Excel_Reader:目前有17 條留言

用戶評(píng)論頭像 明天發(fā)表于 2019年06月15日 16:11[回復(fù)]

大神,咱們這個(gè)類能處理帶圖片的Excel嗎

用戶評(píng)論頭像 發(fā)表于 2017年12月31日 11:33[回復(fù)]

請(qǐng)問 怎么取得 xlsx格式的表格?

用戶評(píng)論頭像 jikverking發(fā)表于 2017年05月18日 08:51[回復(fù)]

有沒有做打包好的代碼和測試的表數(shù)據(jù)庫?。。?!下載有inc文件沒法解壓啊

    用戶評(píng)論頭像 鄭曉發(fā)表于 2017年05月18日 17:00[回復(fù)]

    已經(jīng)更新,添加了demo示例。

      用戶評(píng)論頭像 EasonC發(fā)表于 2017年10月29日 23:17[回復(fù)]

      你好,請(qǐng)問一下你更新的demo在哪里呢?我怎么看不到啊?

        用戶評(píng)論頭像 鄭曉發(fā)表于 2017年10月30日 11:45[回復(fù)]

        最后一句的后面,那不是有一個(gè)“類文件和DEMO”的鏈接嗎?

用戶評(píng)論頭像 toben發(fā)表于 2013年12月20日 16:06[回復(fù)]

直接把Spreadsheet_Excel_Reader類里var $dateFormats的格式給改了就行了。

    用戶評(píng)論頭像 feng1680發(fā)表于 2015年09月09日 15:19[回復(fù)]

    下載class

      用戶評(píng)論頭像 鄭曉發(fā)表于 2015年09月11日 09:13[回復(fù)]

      你好,已更新Spreadsheet_Excel_Reader類庫的下載鏈接。

用戶評(píng)論頭像 為什么總是提示讀不到excel文件發(fā)表于 2013年12月11日 11:21[回復(fù)]

The filename 1.xls is not readable 這什么情況啊

    用戶評(píng)論頭像 鄭曉發(fā)表于 2013年12月11日 11:52[回復(fù)]

    這是提示1.xls文件不可讀,程序沒有讀取該文件的權(quán)限,檢查一下這個(gè)文件的權(quán)限吧。

      用戶評(píng)論頭像 能干的面茶發(fā)表于 2016年02月01日 17:51[回復(fù)]

      要看后綴是不是xls,而不是xlsx

      用戶評(píng)論頭像 打不開。。。發(fā)表于 2017年12月26日 23:18[回復(fù)]

      自己 xls文件打不開,還有個(gè)問題demo能打開xlsx后綴的文件么,我只能打開你demo里的文件,我已經(jīng)給了那個(gè)xls文件所有權(quán)限,還是打不開

        用戶評(píng)論頭像 鄭曉發(fā)表于 2017年12月27日 00:42[回復(fù)]

        xlsx不能讀,你可以試試phpexcel這個(gè)庫, 文中提到的這個(gè)應(yīng)該是太老了只能讀xls。

用戶評(píng)論頭像 液晶廣告機(jī)發(fā)表于 2013年01月23日 13:24[回復(fù)]

可以寫一寫ASP語言和網(wǎng)站SEO優(yōu)化的內(nèi)容不?

    用戶評(píng)論頭像 鄭曉發(fā)表于 2013年01月23日 13:25[回復(fù)]

    我目前還不會(huì)asp… ??

用戶評(píng)論頭像 y1丶razy發(fā)表于 2013年01月16日 13:21[回復(fù)]

日期也是用的純文本,不過寫庫的時(shí)候處理一下

發(fā)表評(píng)論

change vcode