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 相关文章推荐
Gregarius中文日期格式问题解决办法
Apr 22 PHP
php数组函数序列之array_pop() - 删除数组中的最后一个元素
Nov 07 PHP
探讨:如何编写PHP扩展
Jun 13 PHP
php将url地址转化为完整的a标签链接代码(php为url地址添加a标签)
Jan 17 PHP
php简单实现快速排序的方法
Apr 04 PHP
PHP使用Face++接口开发微信公众平台人脸识别系统的方法
Apr 17 PHP
如何用PHP来实现一个动态Web服务器
Jul 29 PHP
thinkPHP内置字符串截取函数用法详解
Nov 15 PHP
PHP面向对象五大原则之开放-封闭原则(OCP)详解
Apr 04 PHP
PHP addcslashes()函数讲解
Feb 03 PHP
php根据命令行参数生成配置文件详解
Mar 15 PHP
PHP实现的策略模式示例
Mar 20 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开发中常用的三个表单验证函数使用小结
2010/03/03 PHP
PHP,ASP.JAVA,JAVA代码格式化工具整理
2010/06/15 PHP
使用PHP导出Word文档的原理和实例
2013/10/21 PHP
destoon复制新模块的方法
2014/06/21 PHP
thinkPHP实现瀑布流的方法
2014/11/29 PHP
PHP实现PDO的mysql数据库操作类
2014/12/12 PHP
详解PHP的Yii框架的运行机制及其路由功能
2016/03/17 PHP
用Mootools获得操作索引的两种方法分享
2011/12/12 Javascript
javascript跟随滚动效果插件代码(javascript Follow Plugin)
2013/08/03 Javascript
jquery操作复选框(checkbox)的12个小技巧总结
2014/02/04 Javascript
JQuery实现table行折叠效果以JSON做数据源
2014/05/26 Javascript
Javascript正则控制文本框只能输入整数或浮点数
2014/09/02 Javascript
基于chosen插件实现人员选择树搜索自动筛选功能
2016/09/24 Javascript
基于jQuery的$.getScript方法去加载javaScript文档解析
2017/11/08 jQuery
解决Vue.js由于延时显示了{{message}}引用界面的问题
2018/08/25 Javascript
JS实现将对象转化为数组的方法分析
2019/01/21 Javascript
JS脚本实现定时到网站上签到/签退功能
2020/04/22 Javascript
[46:58]完美世界DOTA2联赛PWL S3 Forest vs LBZS 第一场 12.17
2020/12/19 DOTA
Pyhthon中使用compileall模块编译源文件为pyc文件
2015/04/28 Python
Python编程中装饰器的使用示例解析
2016/06/20 Python
分享一下Python数据分析常用的8款工具
2018/04/29 Python
Python实现模拟登录网易邮箱的方法示例
2018/07/05 Python
python统计指定目录内文件的代码行数
2019/09/19 Python
python 实现多维数组转向量
2019/11/30 Python
django框架中间件原理与用法详解
2019/12/10 Python
python GUI库图形界面开发之PyQt5工具栏控件QToolBar的详细使用方法与实例
2020/02/28 Python
Django之choices选项和富文本编辑器的使用详解
2020/04/01 Python
使用python编写一个语音朗读闹钟功能的示例代码
2020/07/14 Python
css实例教程 一款纯css3实现的超炫动画背画特效
2014/11/05 HTML / CSS
html5教程实现Photoshop渐变色效果
2013/12/04 HTML / CSS
Get The Label中文官网:英国运动时尚购物平台
2017/04/19 全球购物
GafasWorld西班牙:购买太阳镜、眼镜和隐形眼镜
2019/09/08 全球购物
考试不及格的检讨书
2014/01/22 职场文书
法制宣传月活动总结
2014/04/29 职场文书
森林防火宣传标语
2014/06/27 职场文书
六一文艺汇演主持词
2015/06/30 职场文书