导入Excel 类型的数据
thinkphp 访问此控制方法就可以导入了
百度网盘依赖文件下载:
链接:https://pan.baidu.com/s/1L8HBtDtiBisAikQKbRnZIg
提取码:cjje
复制这段内容后打开百度网盘手机App,操作更方便哦
//数据导入
public function impUser(){ if (!empty($_FILES)) { $upload = new \Think\Upload();// 实例化上传类
$upload->exts = array('xlsx','xls');
$upload->rootPath = './Uploads/';
$upload->savePath = '/excel/'; // 设置附件上传(子)目录 $info = $upload->upload();
if (!$info) {
$this->error($upload->getError());
} $file_name='./Uploads'.$info['daoru_data']['savepath'].$info['daoru_data']['savename']; vendor("PHPExcel.PHPExcel");
$objReader = \PHPExcel_IOFactory::createReader('Excel5');
$objPHPExcel = $objReader->load($file_name,$encode='utf-8');
$sheet = $objPHPExcel->getSheet(0);
$highestRow = $sheet->getHighestRow(); // 取得总行数
$highestColumn = $sheet->getHighestColumn(); // 取得总列数
// dump($objPHPExcel->getActiveSheet()->getCell("A2")->getValue());die();
for($i=2;$i<=$highestRow;$i++)
{
$data['name'] = $objPHPExcel->getActiveSheet()->getCell("A".$i)->getValue();
$data['xingbie'] = $objPHPExcel->getActiveSheet()->getCell("B".$i)->getValue();
$data['birth'] = $objPHPExcel->getActiveSheet()->getCell("C".$i)->getValue();
$data['minzu'] = $objPHPExcel->getActiveSheet()->getCell("D".$i)->getValue();
$data['jiguan'] = $objPHPExcel->getActiveSheet()->getCell("E".$i)->getValue();
$data['cj_time'] = $objPHPExcel->getActiveSheet()->getCell("F".$i)->getValue();
$data['rd_time'] = $objPHPExcel->getActiveSheet()->getCell("G".$i)->getValue();
$data['birth_di'] = $objPHPExcel->getActiveSheet()->getCell("H".$i)->getValue();
$data['ys_xueli'] = $objPHPExcel->getActiveSheet()->getCell("I".$i)->getValue();
$data['zg_xueli'] = $objPHPExcel->getActiveSheet()->getCell("J".$i)->getValue();
$data['gz_danwei'] = $objPHPExcel->getActiveSheet()->getCell("K".$i)->getValue();
$data['zhiwu'] = $objPHPExcel->getActiveSheet()->getCell("L".$i)->getValue();
$data['sz_zhidui'] = $objPHPExcel->getActiveSheet()->getCell("M".$i)->getValue();
$data['dn_zhiwu'] = $objPHPExcel->getActiveSheet()->getCell("N".$i)->getValue();
$data['jianli'] = $objPHPExcel->getActiveSheet()->getCell("O".$i)->getValue();
$data['abc_id'] = I('abc_id');
$data['d_id'] = I('d_id');
$data['time'] = time(); $tmp1['chengwei'] = explode("\r\n", $objPHPExcel->getActiveSheet()->getCell("P".$i)->getValue());
$tmp1['jname'] = explode("\r\n", $objPHPExcel->getActiveSheet()->getCell("Q".$i)->getValue());
$tmp1['nianyue'] = explode("\r\n", $objPHPExcel->getActiveSheet()->getCell("R".$i)->getValue());
$tmp1['zhengzhi'] = explode("\r\n", $objPHPExcel->getActiveSheet()->getCell("S".$i)->getValue());
$tmp1['gongzuo'] = explode("\r\n", $objPHPExcel->getActiveSheet()->getCell("T".$i)->getValue());
// dump($tmp1);
// 这些注释的是错误的
//// $tmp1 = explode("\r\n", $tmp1);
// $tmp['chengwei'] = json_encode($tmp1);
// $tmp['jname'] = json_encode($tmp1);
// $tmp['nianyue'] = json_encode($tmp1);
// $tmp['zhengzhi'] = json_encode($tmp1);
// $tmp['gongzuo'] = json_encode($tmp1); $tmp2['ry_tiem'] = explode("\r\n", $objPHPExcel->getActiveSheet()->getCell("U".$i)->getValue());
$tmp2['ry_chenghao'] = explode("\r\n", $objPHPExcel->getActiveSheet()->getCell("V".$i)->getValue());
$tmp2['ry_shoujiang'] = explode("\r\n", $objPHPExcel->getActiveSheet()->getCell("W".$i)->getValue());
$tmp2['ry_wenjian'] = explode("\r\n", $objPHPExcel->getActiveSheet()->getCell("X".$i)->getValue());
//这些注释的是错误的,
// $tmp3 = explode("\r\n", $tmp2);
// $tmp_ry['ry_tiem'] = json_encode($tmp2);这种格式是错的
// $tmp_ry['ry_chenghao'] = json_encode($tmp2);
// $tmp_ry['ry_shoujiang'] = json_encode($tmp2);
// $tmp_ry['ry_wenjian'] = json_encode($tmp2); $data['jiating'] = json_encode($tmp1);
$data['rongyu'] = json_encode($tmp2);
// str_replace('[\','[',$jiating);
dump($data['jiating']);die();
$re = M('linzi_user') -> add($data);
}
$this->success('导入成功!');
}else
{
$this->error("请选择上传的文件");
}
// dump($_FILES);die(); }
导入Excel 类型的数据的更多相关文章
- MySQL批量导入Excel、txt数据
MySQL批量导入Excel.txt数据 我想Excel是当今最大众化的批量数据管理软件了吧,所以我们会经常涉及到将Excel中数据导入到MySQL中的工作.网上有一些关于直接将Excel导入MySQ ...
- 导入excel并进行数据提取
/** * @description: 导入excel并进行数据提取 * @param {type} * @return: */ Vue.prototype.$importExcel = functi ...
- PLSQL导入Excel表中数据
PL/SQL 和SQL Sever导入excel数据的原理类似,就是找到一个导入excel数据的功能项,按照步骤走就是了.下面是一个些细节过程,希望对像我这样的菜鸟有帮助. www.2cto.co ...
- 使用PHP导入Excel和导出数据为Excel文件
有时需要将Excel表格的数据导入到mysql数据库中,我们使用PHP的一个开源项目PHP-ExcelReader可以轻松实现Excel的导入.另外将mysql数据导出为Excel与本站上篇文章中导出 ...
- Sql Server数据库导入Excel、txt数据详解,新人必看
转自个人原创 https://blog.csdn.net/qq_15170495/article/details/104591606 数据库的要想导入数据,列的映射很是关键,只有列名匹配好,系统才知道 ...
- 如何在R中导入不同类型的数据
这个表格是我在datacamp学习R导入文件的课程的归纳 遇到的问题及解决方法(环境: Rv3.2.5,win7,32位) 1. 使用gdata中的read.xls时提示找不到Perl路径 >l ...
- C# 各种导入 Excel 文件的数据的方法总结
在导入之前都需要将上传的文件保存到服务器,所以避免重复的写这些代码,先贴出上传文件并保存到服务器指定路径的代码. protected void btnImport_Click(object sende ...
- C#各种导入Excel文件的数据的方法总结
在导入前都需要将上传的文件保存到服务器,所以避免重复的写这些代码,先贴出上传文件并保存到服务器指定路径的代码 protected void btnImport_Click(object sender, ...
- oracle导入Excel表文本数据
首先导Excel表数据要先建和Excel表字段对应的表,然后将Excel表另存为Txt文本, 然后在Plsql客户端点击工具->文本导入器 然后这里要选择用户及其表,点击导入数据就可以
随机推荐
- Duplicate复制数据库并创建物理StandBy(spfile版本)
过程和Duplicate复制数据库并创建物理StandBy类似,只是不需要重启数据库. 目的:创建standby,不重启源数据库 1设定环境如下: Primary数据库 IP 172.17.22.16 ...
- nginx启动常遇到的问题
问题1: nginx: [emerg] open() "/opt/soft/nginx/mime.types" failed (2: No such file or directo ...
- C语言判断文件夹或者文件是否存在的方法【转】
C语言判断文件夹或者文件是否存在的方法 方法一:access函数判断文件夹或者文件是否存在 函数原型: int access(const char *filename, int mode); 所 ...
- 【Windows】字符串处理
1.截取字符串 举例说明其基本功能: @echo off set ifo=abcdefghijklmnopqrstuvwxyz0123456789 echo 原字符串(第二行为各字符的序号): ech ...
- 高性能Javascript(2) DOM编程
第三部分 DOM编程 文档对象模型(DOM)是一个独立于语言的,使用XML和HTML文档操作的应用程序接口(API).在浏览器中,主要与HTML文档打交道,在网页应用中检索XML文档也很常见.DOM ...
- Swift 模式匹配
前言 在 Swift 中模式匹配是个重要的概念. 最常用的模式匹配是 switch 语法. 模式匹配非常灵活,在使用 switch 进行一轮模式匹配时,不需要所有的 case 都是同一种风格. let ...
- ORA-214 signalled during: ALTER DATABASE MOUNT 问题
数据库服务器移动了位置,后来再连其数据库发现提示无法连接,大致为“无法为所有新实例创建连接...”,查看alert日志发现有如下错误: starting up 1 dispatcher(s) for ...
- Boost中的智能指针(转)
这篇文章主要介绍 boost中的智能指针的使用.(转自:http://www.cnblogs.com/sld666666/archive/2010/12/16/1908265.html) 内存管理是一 ...
- 3.翻译系列:EF Code-First 示例(EF 6 Code-First系列)
原文链接:http://www.entityframeworktutorial.net/code-first/simple-code-first-example.aspx EF 6 Code-Firs ...
- [svc]二三层数据格式&&三层数据如何匹配路由
网络知识拾遗 tcpip的4&7层模型 PDU数据包在不同层的不同称呼 物理层(一层)PDU指数据位(Bit). 数据链路层(二层)PDU指数据帧(Frame). 网络层(三层)PDU指数据包 ...