教程集 www.jiaochengji.com
教程集 >  脚本编程  >  php  >  正文 PHP Spreadsheet_Excel_Reader导入excel中文显示乱码

PHP Spreadsheet_Excel_Reader导入excel中文显示乱码

发布时间:2018-11-25   编辑:jiaochengji.com
教程集为您提供PHP Spreadsheet,Excel,Reader导入excel中文显示乱码等资源,欢迎您收藏本站,我们将为您提供最新的PHP Spreadsheet,Excel,Reader导入excel中文显示乱码资源
本文章来给大家介绍PHP Spreadsheet_Excel_Reader导入excel中文显示乱码与不能读取.xlsx格式的文件的解决办法,有碰到此类问题的同学可进入参考。

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

<table width="620" align="center" border="0" cellpadding="1" cellspacing="1" style="background:#FB7"> <tr> <td width="464" height="27" bgcolor="#FFE7CE"> 代码如下</td> <td width="109" align="center" bgcolor="#FFE7CE" style="cursor:pointer;" onclick="doCopy('copy8446')">复制代码</td> </tr> <tr> <td height="auto" colspan="2" valign="top" bgcolor="#FFFFFF" style="padding:10px;" class="copyclass" id=copy8446>

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

您可能感兴趣的文章:
PHP Spreadsheet_Excel_Reader导入excel中文显示乱码
php ExcelReader读取excel文件
PHP导入导出Excel文件的方法
php框架laravel excel包使用教程介绍
php导入Excel文件的例子(支持utf8、gbk编码)
php导出数据到excel文件 php导出excel乱码问题
如何把Excel导入mysql数据表的方法详解
PHP中操作Excel实例代码
PHP导出excel php使用phpexcel导出excel文件
php导出数据为execel文件的实例分享

[关闭]
~ ~