thinkPHP实现将excel导入到数据库中的方法


Posted in PHP onApril 22, 2016

本文实例讲述了thinkPHP实现将excel导入到数据库中的方法。分享给大家供大家参考,具体如下:

PHPExcel插件可点击此处本站下载。

这里使用的是thinkphp框架的3.1版本,下载好压缩包,框架中的extend中的vendor文件夹中新建一个名为PHPExcel的文件夹,把classes里面的内容放到里面

下面是前端页面

提示:我在测试的时候遇到报错exception 'PHPExcel_Reader_Exception' with message 'The filename

原因是由于excel的文件后缀可能不同,我的文件后缀是xlsx,然后给把他另存为了xls的文件,就可以了

<html>
 <head>
 </head>
 <body>
  <form action="{pigcms::U('Jdb/abcdefgwulisuibian')}" method="post" enctype="multipart/form-data">
   <input type="file" name="import"/>
   <input type="hidden" name="table" value="tablename"/>
   <input type="submit" value="导入"/>
  </form>
 </body>
</html>

下面是php的

function abcdefgwulisuibianuplod(){
  $this->display();//显示页面
}
function abcdefgwulisuibian(){
  if (!empty($_FILES)) {
   import("@.ORG.UploadFile");
   $config=array(
    'allowExts'=>array('xlsx','xls'),
    'savePath'=>'./Public/upload/',
    'saveRule'=>'time',
   );
   $upload = new UploadFile($config);
   if (!$upload->upload()) {
    $this->error($upload->getErrorMsg());
   } else {
    $info = $upload->getUploadFileInfo();
   }
   vendor("PHPExcel.PHPExcel");
    $file_name=$info[0]['savepath'].$info[0]['savename'];
    $objReader = PHPExcel_IOFactory::createReader('Excel5');
    $objPHPExcel = $objReader->load($file_name,$encode='utf-8');
    $sheet = $objPHPExcel->getSheet(0);
    $highestRow = $sheet->getHighestRow(); // 取得总行数
    $highestColumn = $sheet->getHighestColumn(); // 取得总列数
    for($i=2;$i<=$highestRow;$i++)//这个地方根据需要,一般第一行是名称,所以从第二行开始循环,也可以从第一行开始
    {
     $data['lianjieid'] = $objPHPExcel->getActiveSheet()->getCell("A".$i)->getValue();//数据库字段和excel列相对应
     $data['yaoqingma'] = $objPHPExcel->getActiveSheet()->getCell("B".$i)->getValue();
     $data['dlmima']= $objPHPExcel->getActiveSheet()->getCell("C".$i)->getValue();
     $data['ljdizhi']= $objPHPExcel->getActiveSheet()->getCell("D".$i)->getValue();
     M('jdb')->add($data);//插入数据库
    }
     $this->success('导入成功!');
  }else
   {
    $this->error("请选择上传的文件");
   }
}

希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。

PHP 相关文章推荐
打造计数器DIY三步曲(中)
Oct 09 PHP
php基础知识:类与对象(5) static
Dec 13 PHP
php获取网页内容方法总结
Dec 04 PHP
php连接mysql数据库代码
Mar 10 PHP
php 获取可变函数参数的函数
Aug 26 PHP
PHP 文件上传全攻略
Apr 28 PHP
深入for,while,foreach遍历时间比较的详解
Jun 08 PHP
PHP错误Warning: Cannot modify header information - headers already sent by解决方法
Sep 27 PHP
PHP实现自动识别Restful API的返回内容类型
Feb 07 PHP
php自定义hash函数实例
May 05 PHP
PHP基于堆栈实现的高级计算器功能示例
Sep 15 PHP
thinkphp5.1框架模板赋值与变量输出示例
May 25 PHP
利用php输出不同的心形图案
Apr 22 #PHP
php生成酷炫的四个字符验证码
Apr 22 #PHP
ThinkPHP连接Oracle数据库
Apr 22 #PHP
在CentOS系统上从零开始搭建WordPress博客的全流程记录
Apr 21 #PHP
yii2 页面底部加载css和js的技巧
Apr 21 #PHP
yii2整合百度编辑器umeditor及umeditor图片上传问题的解决办法
Apr 20 #PHP
又拍云异步上传实例教程详解
Apr 19 #PHP
You might like
PHP ajax 分页类代码
2008/11/13 PHP
PHP数组 为文章加关键字连接 文章内容自动加链接
2011/12/29 PHP
php7 参数、整形及字符串处理机制修改实例分析
2020/05/25 PHP
浅谈Javascript实现继承的方法
2015/07/06 Javascript
移动端H5开发 Turn.js实现很棒的翻书效果
2016/06/20 Javascript
常用的js验证和数据处理总结
2016/08/02 Javascript
总结JavaScript的正则与其他语言的不同之处
2016/08/25 Javascript
详解JavaScript的内置对象
2016/12/07 Javascript
Bootstrap基本样式学习笔记之图片(6)
2016/12/07 Javascript
谈谈Vue.js——vue-resource全攻略
2017/01/16 Javascript
JavaScript编写一个贪吃蛇游戏
2017/03/09 Javascript
JavaScript 字符串数字左补位,右补位,取固定长度,截位扩展函数代码
2017/03/25 Javascript
JS+HTML实现的圆形可点击区域示例【3种方法】
2018/08/01 Javascript
vue-router命名路由和编程式路由传参讲解
2019/01/19 Javascript
一文了解Vue中的nextTick
2019/05/06 Javascript
uni-app 组件里面获取元素宽高的实现
2019/12/27 Javascript
微信小程序吸底区域适配iPhoneX的实现
2020/04/09 Javascript
Jquery使用each函数实现遍历及数组处理
2020/07/14 jQuery
vue实现简易图片左右旋转,上一张,下一张组件案例
2020/07/31 Javascript
python引用DLL文件的方法
2015/05/11 Python
Python 基于Twisted框架的文件夹网络传输源码
2016/08/28 Python
python绘制双柱形图代码实例
2017/12/14 Python
Python简单读写Xls格式文档的方法示例
2018/08/17 Python
python画柱状图--不同颜色并显示数值的方法
2018/12/13 Python
Python with语句和过程抽取思想
2019/12/23 Python
pytorch 实现张量tensor,图片,CPU,GPU,数组等的转换
2020/01/13 Python
python 调用API接口 获取和解析 Json数据
2020/09/28 Python
游戏商店:Eneba
2020/04/25 全球购物
计算机应用专业应届毕业生中文求职信范文
2013/11/29 职场文书
快递业务员岗位职责
2014/01/06 职场文书
儿媳婚宴答谢词
2014/01/14 职场文书
乡镇食品安全责任书
2014/07/28 职场文书
公司股东合作协议书
2014/09/14 职场文书
邀请函格式范文
2015/02/02 职场文书
MySQL笔记 —SQL运算符
2022/01/18 MySQL
漫改真人电影「萌系男友是燃燃的橘色」公开先导视觉图
2022/03/21 日漫