php解析excel

phpexcelreader

http://sourceforge.net/projects/phpexcelreader

Fatal error: require_once() [function.require]: Failed opening required 'Spreadsheet/Excel/Reader/OLERead.php' (include_path='.;\xampp\php\PEAR') in XXXX

解决方法:将Spreadsheet/Excel/Reader/OLERead.php换成oleread.inc就OK了!

将$data->setOutputEncoding('CP1251');替换为$data->setOutputEncoding('CP936');

否则的话中文会出问题。

如果是使用繁体的话可以修改为CP950、日文是CP932,具体可参考codepage说明。

里面自带的 jxlrwtest.xls 有问题,需要修改example.php中的:

$data->read('jxlrwtest.xls');

自己新建一个,然后换成自己的 excel 文件名

$data->read('test.xls');

输出的结果,没能区分哪行。

在里面加入方法

// add by panzhiqi 2008-1-16 17:20:17 for return array result
function getExcelResult() {
$result = array();
for ($i = 1; $i <= $this->sheets[0]['numRows']; $i++) {
for ($j = 1; $j <= $this->sheets[0]['numCols']; $j++) {
$result[$i][$j] = $this->sheets[0]['cells'][$i][$j];
}
}
return $result;
}

直接这样调用
$result = $data->getExcelResult();
print_r($result);

看看结果是一个二维数组,OK,收工。