怎么在ThinkPHP中素PHPExcel导入Excel文件

介绍

今天就跟大家聊聊有关怎么在ThinkPHP中素PHPExcel导入Excel文件,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

php有什么用

php是一个嵌套的缩写名称,是英文超级文本预处理语言,它的语法混合了C、Java、Perl以及php自创新的语法,主要用来做网站开发,许多小型网站都用php开发,因为php是开源的,从而使php经得久不衰。

<强>开发思路:

1。先把Excel文件上传到服务器

2。获取服务器Excel文件内容

3。写入数据库

<强>一、上传Excel文件强,使用PHP里自带的上传方法“\认为\上传();”,可以很方便的实现。为此我整理下使用这个方法的最简单方式

代码如下:

/* *
, * TODO上传文件方法
, * @param $文件标识形式表单文件的名称值
, * @param dir美元上传到上传目录的美元dir文件夹里
, * @param int美元最大容量最大上传限制,默认1024000字节
, * @param数组$ ext允许上传文件类型默认数组(& # 39;gif # 39; & # 39; jpg # 39;, & # 39; jpeg # 39;, & # 39; bmp # 39;, & # 39; png # 39;)
, * @return数组返回数组,失败状态=0成功状态=1,filepath=newspost/2014-9-9/a.jpg
, */
函数还是(文件标识,dir美元,最大尺寸=5242880美元,美元ext=数组(& # 39;gif # 39; & # 39; jpg # 39;, & # 39; jpeg # 39;, & # 39; bmp # 39;, & # 39; png # 39;), maxwidth=430美元){
,,,上传美元=new \认为\上传();//实例化上传类
,,,上传→美元maxSize ,=,,,,最大容量;美元//设置附件上传大小,单位字节(微信图片限制1 m
,,,上传→美元exts ,,,,=,,,,ext美元;//设置附件上传类型
,,,上传→美元rootPath =,,,,& # 39;。/上传/& # 39;;//设置附件上传根目录
,,,上传→美元savePath =,,,,dir强生# 39;美元/& # 39;;//设置附件上传(子)目录
,,,//上传文件
,,,info 美元,=,,美元上传→上传();

,,,如果(! $ info){//上传错误提示错误信息
,,,,,,,返回数组(状态=祝辞0,味精=祝辞上传→美元getError ());
,,,其他}{//上传成功
,,,,,,,返回数组(状态=祝辞1,味精=祝辞& # 39;上传成功& # 39;,filepath=祝辞美元信息[文件标识美元][& # 39;savepath& # 39;]。美元信息[文件标识美元][& # 39;savename& # 39;]);
,,,}
}

这里默认上传到ThinkPHP入口文件索引。php所在的文件夹上传,此方法返回一个数据,状态状态=1时为成功,也建议大家在写功能模块时或做封装时,整个系统的在架构初期应该有约定,在必要的情况下返回值用数组形式,成功返回

代码如下:

返回数组(状态=祝辞1,data=https://www.yisu.com/zixun/> ....信息=> .....)


失败时可以返回

代码如下:

数组(状态→0时,信息=祝辞& # 39;可以说明出错的原因& # 39;,....)


这样用统一的方式有利于规范开发,团队协作时看代码时可以提高效率,减少思维运转,说远了,上传的方法调用方式如下:

代码如下:

//excel文件
如果(!空(带有_file美元[& # 39;xls # 39;][& # 39;名字# 39;])){
,,,上传=美元还是(& # 39;xls # 39;, & # 39; tempxls& # 39;, 5242880,数组(& # 39;xls # 39; & # 39; xlsx& # 39;));
,,,如果上传($ & # 39;状态# 39;)){
, $ path=$上传(& # 39;filepath& # 39;],
,,,其他}{
,这美元→错误($上传(& # 39;味精# 39;]);
,,,}
}

<强>二,获取Excel数据

1。首先需要引入PHPExcel的类库

代码如下:

require_once & # 39;模块/PHPExcel/类/PHPExcel/IOFactory.php& # 39;;

2。获取Excel第0张表即(Sheet1)

代码如下:

//获取Excel文件
objPHPExcel=\ PHPExcel_IOFactory:美元:负载(“上传/$ path");
objPHPExcel→美元setActiveSheetIndex (0);
sheet0=objPHPExcel→美元getSheet (0);

3。获取行数,并把数据读取出美元来数数据组

代码如下:

rowCount=sheet0→美元getHighestRow ();//excel行数
$ data=https://www.yisu.com/zixun/array ();
($ i=2;我& lt;美元=$ rowCount;$ + +){
,,,$ item[& # 39;名字# 39;]=$这→getExcelValue (sheet0美元,& # 39;一个# 39;$ i);
,,,$ item[& # 39;性与# 39;]=$这→getExcelValue (sheet0美元,& # 39;b # 39; $ i);
,,,$ item[& # 39;接触# 39;]=$这→getExcelValue (sheet0美元,& # 39;c # 39; $ i);
,,,$ item[& # 39;评论# 39;]=$这→getExcelValue (sheet0美元,& # 39;d # 39; $ i);
,,,$ item [& # 39; addtime& # 39;]=$这→getExcelValue (sheet0美元,& # 39;e # 39; $ i);

,,,$ data[]=美元项目;
}

<强>三,最后保存到数据库

怎么在ThinkPHP中素PHPExcel导入Excel文件