Spreadsheet_Excel_Reader是个常用的导入excel文件的php类,正常情况下使用该类导入excel代码如下:
- <?php
-
- require_once ('../global.php');
-
- require_once ('./excel/reader.php');
-
- $data = new Spreadsheet_Excel_Reader();
-
- $data->setOutputEncoding('CP936');
-
- $data->read('20110630_ctms.xls');
-
- print_r($data->sheets);
- echo '<br />';
-
- $k = 0;
- echo $data->sheets[$k]['numRows'];
在使用该类时,我遇到过如下问题:
1.不能读取.xlsx格式的文件:
.xlsx格式的文件不能直接读取,解决方法是打开该文件,然后另存为.xls文件.
注意:请选择“Microsoft Excel 5.0/95 工作薄(*.xls)”,这种比较好用,“Excel 97-2003工作薄(*.xls)”这种也可以,但有时会有问题,比如读入数据出现丢失的现象。
2.编码问题,中文显示乱码:
$data->setOutputEncoding(‘CP936′);是设置输出编码用的,但不能随意的输出想要的编码。可以尝试改变成gbk或者utf-8后用iconv转换一下。 |