网站地图    收藏   

主页 > php专栏 > php类库 >

PHP Spreadsheet_Excel_Reader导入excel中文显示乱码 - p

来源:自学PHP网    时间:2014-11-30 12:53 作者: 阅读:

[导读] Spreadsheet_Excel_Reader是个常用的导入excel文件的php类,正常情况下使用该类导入excel代码如下:?php 引入系统公共文件。require_once(...

PHP Spreadsheet_Excel_Reader导入excel中文显示乱码

Spreadsheet_Excel_Reader是个常用的导入excel文件的php类,正常情况下使用该类导入excel代码如下:

  1. <?php 
  2. //引入系统公共文件。 
  3. require_once ('../global.php'); 
  4. //引入excel读取功能类 
  5. require_once ('./excel/reader.php'); 
  6. //实例化 
  7. $data = new Spreadsheet_Excel_Reader(); 
  8. //设置输出类型(可以是“GBK”或者“UTF-8”),注意插入数据库时的编码转换 
  9. $data->setOutputEncoding('CP936'); 
  10. //读取excel文件地址 
  11. $data->read('20110630_ctms.xls'); 
  12. //打印输出sheet数组,单个或多个 
  13. print_r($data->sheets); 
  14. echo '<br />'
  15. //打印输出每个sheet的行数,$k从零开始 
  16. $k = 0; 
  17. 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转换一下。

自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论