php讀取excel工具PHPExcelParser
PHPExcelParser,以前做過一些讀取excel的工作,這些工具就存了下來。現在推薦給大家,也許將來用得著。一,PHPExcelParser有以下3個特點
1,下載的PHPExcelParser裡面有一個,比較詳細的使用手冊,告訴你什麼方法是幹什麼用的。2,不光可能可以把excel文件中的內容,讀取出來,而且可以直接入庫3,含有實例,可以照葫蘆畫瓢二,講解一下PHPExcelParser實例的一些代碼
requires 'excelparser.php'; //包括解釋excel的核心文件
$excel = new ExcelFileParser("debug.log", ABC_NO_LOG);//生成一個讀取句柄
$error_code = $excel->ParseFromFile($filename)//以文件形勢來讀取
//下面這種方法呢是從字符串中讀取excel
$fd = fopen( $filename, 'rb');
$content = fread ($fd, filesize ($name));
fclose($fd);
$error_code = $excel->ParseFromString($content);
unset( $content, $fd );
//返回的錯誤編碼
0 - 沒有錯誤
1 - 不能打開文件
2 - 文件太小
3 - 讀取excel頭信息出錯
4 - 文件讀取錯誤
5 - 不是excel文件,或者版本早excel5.0
6 - 文件已損壞
7 - 沒有數據
8 - 文件版本未知
array $excel->worksheet//讀取工作薄,就是讀取sheet
$excel->worksheet['name'] //工作薄數組
boolean $excel->worksheet['unicode'][$worksheet_number] //工作薄名是不是unicode的形勢
string $excel->worksheet['name'][$worksheet_number]//得到工作薄名
array $exc->worksheet['data'][$worksheet_number]['cell']//工作薄中的大數據塊,他由一個小的數據塊組成
int $exc->worksheet['data'][$worksheet_number]['max_row']//單個工作薄中的最大行數,其他挺像數學裡面的X軸的。
int $exc->worksheet['data'][$worksheet_number]['max_col']//單個工作薄中的最大列數,其他挺像數學裡面的Y軸的。
int $exc->worksheet['data'][$worksheet_number]['cell'][$row][$col]['type']//取得數據類型
0 - 整型
1 - 字符型
2 - 浮點弄
3 - 日期型
mixed $exc->worksheet['data'][$worksheet_number]['cell'][$row][$col]['data']
int $exc->worksheet['data'][$worksheet_number]['cell'][$row][$col]['font'] //取得字體的類型索引
$font = $excel->fonts[$index]; //根據索引來得到excel小數據庫的字體數據
$font['size'] - //字體大小
$font['italic'] - //是不是斜體
$font['strikeout']
$font['bold'] //是不是粗體
$font['script']
$font['underline']- //下劃線
$font['name'] - //字體名稱
array $excel->sst//包涵數據的數組
boolean $excel->sst['unicode'][$ind]//數據是壓縮還是沒有壓縮的
string $excel->sst['data'][$ind]//讀取數據
$excel->xls2tstamp($xlsdate) //將日期轉成時間戳
$ret = $excel->getDateArray($xlsdate);//取得日期數組
$ret['day'] = 天.
$ret['month'] = 月.
$ret['year']= 年.
requires 'excelparser.php'; //包括解釋excel的核心文件
$excel = new ExcelFileParser("debug.log", ABC_NO_LOG);//生成一個讀取句柄
$error_code = $excel->;ParseFromFile($filename)//以文件形勢來讀取//下面這種方法呢是從字符串中讀取excel
$fd = fopen( $filename, 'rb');
$content = fread ($fd, filesize ($name));fclose($fd);$error_code = $excel->;
ParseFromString($content);unset( $content, $fd );
//返回的錯誤編碼
0 - 沒有錯誤
1 - 不能打開文件
2 - 文件太小
3 - 讀取excel頭信息出錯
4 - 文件讀取錯誤
5 - 不是excel文件,或者版本早excel5.0
6 - 文件已損壞
7 - 沒有數據 8 - 文件版本未知array
$excel->worksheet//讀取工作薄,就是讀取sheet
$excel->worksheet['name'] //工作薄數組boolean
$excel->worksheet['unicode'][$worksheet_number] //工作薄名是不是unicode的形勢string
$excel->worksheet['name'][$worksheet_number]//得到工作薄名array
$exc->worksheet['data'][$worksheet_number]['cell']//工作薄中的大數據塊,他由一個小的數據塊組成int
$exc->worksheet['data'][$worksheet_number]['max_row']//單個工作薄中的最大行數,其他挺像數學裡面的X軸的。int
$exc->worksheet['data'][$worksheet_number]['max_col']//單個工作薄中的最大列數,其他挺像數學裡面的Y軸的。int
$exc->worksheet['data'][$worksheet_number]['cell'][$row][$col]['type']
//取得數據類型
0 - 整型
1 - 字符型
2 - 浮點
3 - 日期型mixed
$exc->worksheet['data'][$worksheet_number]['cell'][$row][$col]['data']
int $exc->worksheet['data'][$worksheet_number]['cell'][$row][$col]['font'] //取得字體的類型索引
$font = $excel->fonts[$index]; //根據索引來得到excel小數據庫的字體數據
$font['size'] - //字體大小
$font['italic'] - //是不是斜體
$font['strikeout']
$font['bold'] //是不是粗體
$font['script']
$font['underline']- //下劃線
$font['name'] - //字體名稱array
$excel->sst//包涵數據的數組boolean
$excel->sst['unicode'][$ind]//數據是壓縮還是沒有壓縮的string
$excel->sst['data'][$ind]//讀取數據$excel->xls2tstamp($xlsdate) //將日期轉成時間戳
$ret = $excel->getDateArray($xlsdate);//取得日期數組
$ret['day'] = 天.
$ret['month'] = 月.
$ret['year']= 年.
個人覺得,從excel中讀取數據,就像在excel裡面扣東西一樣。又很像數學裡的X軸,Y軸,X,Y軸交叉的地方就是一個數據點,在這裡也是
頁:
[1]