phpstudy|PHP Spreadsheet_Excel_Reader导入excel中文显示乱码

时间:2018-02-18  来源:excel  阅读:

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

 代码如下

//引入系统公共文件。
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 "
";
//打印输出每个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转换一下。

phpstudy|PHP Spreadsheet_Excel_Reader导入excel中文显示乱码

http://m.bbyears.com/bangongshuma/39356.html

推荐访问:phpstorm php面试题 php数组转字符串 php教程
相关阅读 猜你喜欢
本类排行 本类最新