手机
当前位置:查字典教程网 >编程开发 >php教程 >php读取EXCEL文件 php excelreader读取excel文件
php读取EXCEL文件 php excelreader读取excel文件
摘要:php开发中肯定会遇到将excel文件内容导入到数据库的需要,php-excel-reader是一个读取excel的类,可以很轻松的使用它读...

php开发中肯定会遇到将excel文件内容导入到数据库的需要,php-excel-reader是一个读取excel的类,可以很轻松的使用它读取excel文件非常方便。

php-excel-reader下载地址:http://www.jb51.net/codes/67223.html

我下载的是php-excel-reader-2.21版本,使用的时候还遇到几个小问题,后面再细说,先奉上php实例:

我使用的excel如下图:

php读取EXCEL文件 php excelreader读取excel文件1php代码如下:

复制代码 代码如下:

<?php

/*by www.phpddt.com*/

header("Content-Type:text/html;charset=utf-8");

require_once 'excel_reader2.php';

//创建对象

$data = new Spreadsheet_Excel_Reader();

//设置文本输出编码

$data->setOutputEncoding('UTF-8');

//读取Excel文件

$data->read("example.xls");

//$data->sheets[0]['numRows']为Excel行数

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

//$data->sheets[0]['numCols']为Excel列数

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

//显示每个单元格内容

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

}

echo '<br>';

}

?>

读取结果截图如下:

php读取EXCEL文件 php excelreader读取excel文件2再来说说这个类的小问题:

(1)出现Deprecated: Function split() is deprecated in 。。。错误

解决:将excel_reader2.php源码中split改为explode,详情点击php中explode与split的区别介绍

(2)出现Deprecated: Assigning the return value of new by reference is deprecated in错误

解决:将excel_reader2.php源码中$this->_ole =& new OLERead()中 &去掉,因为php5.3中废除了=& 符号直接用=引用

(3)乱码问题解决:

构造函数是function Spreadsheet_Excel_Reader($file='',$store_extended_info=true,$outputEncoding=''),它默认的编码是utf-8,如果不指定,可能会出现乱码问题,可通过$data->setOutputEncoding('GBK');指定,还有如果你使用dump()函数,dump()函数将excel内容一html格式输出,使用htmlentities将字符转化为html的,它默认使用ISO8559-1编码的,所以你要将 excel_reader2.php源码中htmlentities($val)函数改为htmlentities($val,ENT_COMPAT,"GB2312");才行。

最后来说说,php-excel-reader操作excel中的两个重要的方法:

1.dump(),它可以将excel内容以html格式输出:

echo $data->dump(true,true);

2.将excel数据存入数组中,使用$data->sheets,打印下如下:

复制代码 代码如下:

Array

(

[0] => Array

(

[maxrow] => 0

[maxcol] => 0

[numRows] => 5

[numCols] => 4

[cells] => Array

(

[1] => Array

(

[1] => 编号

[2] => 姓名

[3] => 年龄

[4] => 学号

)

[2] => Array

(

[1] => 1

[2] => 小红

[3] => 22

[4] => a1000

)

[3] => Array

(

[1] => 2

[2] => 小王

[3] => 33

[4] => a1001

)

[4] => Array

(

[1] => 3

[2] => 小黑

[3] => 44

[4] => a1002

)

[5] => Array

(

[2] => by

[3] => www.phpddt.com

)

)

[cellsInfo] => Array

(

[1] => Array

(

[1] => Array

(

[xfIndex] => 15

)

[2] => Array

(

[xfIndex] => 15

)

[3] => Array

(

[xfIndex] => 15

)

[4] => Array

(

[xfIndex] => 15

)

)

[2] => Array

(

[1] => Array

(

[string] => 1

[raw] => 1

[rectype] => unknown

[format] => %s

[formatIndex] => 0

[fontIndex] => 0

[formatColor] =>

[xfIndex] => 15

)

[2] => Array

(

[xfIndex] => 15

)

[3] => Array

(

[string] => 22

[raw] => 22

[rectype] => unknown

[format] => %s

[formatIndex] => 0

[fontIndex] => 0

[formatColor] =>

[xfIndex] => 15

)

[4] => Array

(

[xfIndex] => 15

)

)

[3] => Array

(

[1] => Array

(

[string] => 2

[raw] => 2

[rectype] => unknown

[format] => %s

[formatIndex] => 0

[fontIndex] => 6

[formatColor] =>

[xfIndex] => 23

)

[2] => Array

(

[xfIndex] => 23

)

[3] => Array

(

[string] => 33

[raw] => 33

[rectype] => unknown

[format] => %s

[formatIndex] => 0

[fontIndex] => 6

[formatColor] =>

[xfIndex] => 23

)

[4] => Array

(

[xfIndex] => 23

)

)

[4] => Array

(

[1] => Array

(

[string] => 3

[raw] => 3

[rectype] => unknown

[format] => %s

[formatIndex] => 0

[fontIndex] => 0

[formatColor] =>

[xfIndex] => 15

)

[2] => Array

(

[xfIndex] => 15

)

[3] => Array

(

[string] => 44

[raw] => 44

[rectype] => unknown

[format] => %s

[formatIndex] => 0

[fontIndex] => 0

[formatColor] =>

[xfIndex] => 15

)

[4] => Array

(

[xfIndex] => 15

)

)

[5] => Array

(

[2] => Array

(

[xfIndex] => 15

)

[3] => Array

(

[xfIndex] => 24

[hyperlink] => Array

(

[flags] => 23

[desc] => www.phpddt.com

[link] => http://www.phpddt.co

)

)

)

)

)

[1] => Array

(

[maxrow] => 0

[maxcol] => 0

[numRows] => 0

[numCols] => 0

)

[2] => Array

(

[maxrow] => 0

[maxcol] => 0

[numRows] => 0

[numCols] => 0

)

)

这样你应该知道怎么取excel中的数据了,好了,使用php-excel-reader读取excel文件就是这么简单

【php读取EXCEL文件 php excelreader读取excel文件】相关文章:

用 php 编写的日历

php对文件进行hash运算的方法

php生成zip文件类实例

PHP图像处理类库MagickWand用法实例分析

PHP实现多线程的两个方法

Apache设置虚拟WEB

无数据库的详细域名查询程序PHP版(3)

PHP.MVC的模板标签系统(一)

PHP的栏目导航程序

15个小时----从修改程序到自己些程序

精品推荐
分类导航