您的位置:首页 > 编程语言 > PHP开发

php导入excel文件功能开发 phpExcelReader

2014-10-17 15:08 309 查看
关于phpExcelReader有以下几点说明用之前请阅读

1. Excel/reader.php文件中已经用require_once包含了oleread.inc文件,所以在调用的时候不需要加载oleread.inc。

2. 官方提供的excel文件jxlwtest.xls已经损坏,无法读取与解析。

3. 原始Excel/reader.php文件的第31行(如下)会导致错误:

require_once ‘Spreadsheet/Excel/Reader/OLERead.php’;

原因是Spreadsheet/Excel/Reader/OLERead.php文件不存在。其实这里所需的文件就是Excel/oleread.inc,把require_once后的文件名改成 ’oleread.inc’即可。

4. 原始Excel/reader.php文件的第261行会导致如下警告:

Deprecated: Assigning thereturn value of new by reference is deprecated

其原因是此行的 =& 符号已经在PHP 5.3中被废弃。根据该符号在此处的作用,直接将其改为 = 即可。

5. PHP-ExcelReader不支持Excel 2007文档的解析,也就是说扩展名为xlsx的Excel文件不能使用本类库进行解析;它只针对扩展名为xls的Excel文件。

6. PHP-ExcelReader的设置编码方法基于iconv命 令,setOutputEncoding方法的参数就是需要设置的字符集的名称。要使这个方法生效需要给本地的PHP环境安装iconv扩展;若本地 PHP环境没有iconv扩展,那么PHP-ExcelReader的编码方法默认为Unicode。

7.PHP-ExceReader在解析整数的时候可能会出现精度上的误差,如58解析为57.5,原因不明。能做的就是解析完后检查下数据,然后四舍五入(如果有必要的话)。

8. PHP-ExcelReader对于excel文件中的空白单元格,要么直接跳过不存放到结果数组中,要么保存为0或者””(空字符串)。

test2.php

<?php

require_once './phpExcelReader/Excel/reader.php';

// ExcelFile($filename, $encoding);

$data = new Spreadsheet_Excel_Reader();

$data->setOutputEncoding('GBK'); //GBK或者GB2312

// Set output Encoding. $data->setOutputEncoding('gbk');

//”data.xls”是指要导入到mysql中的excel文件

chmod("data.xlsx",0777);

$data->read('data.xlsx');

@ $db = mysql_connect('localhost', 'root', '123456') or die("Could not connect to database.");//连接数据库

mysql_query("set names 'gbk'");//输出中文

mysql_select_db('mydb'); //选择数据库

error_reporting(E_ALL ^ E_NOTICE);

for ($i = 1; $i <= $data->sheets[0]['numRows']; $i++) {

//以下注释的for循环打印excel表数据

/*

for ($j = 1; $j < = $data->sheets[0]['numCols']; $j++) {

echo "\"".$data->sheets[0]['cells'][$i][$j]."\",";

}

echo "\n";

*/

//以下代码是将excel表数据【3个字段】插入到mysql中, 根据你的excel表字段的多少,改写以下代码吧!

$sql = "INSERT INTO test VALUES('".

$data->sheets[0]['cells'][$i][1]."','".

$data->sheets[0]['cells'][$i][2]."','".

$data->sheets[0]['cells'][$i][3]."')";

echo $sql.'< br />';

$res = mysql_query($sql);

}

?>

可以找我上传的附件下载。http://download.csdn.net/detail/dl425134845/8049583
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: