TP5导入EXCEL到数据库
2024-09-05 11:40:33
前期准备工作:
1.下载PHPExcel放到vendor下
2.前端页面:
<form action="save" method="post" enctype="multipart/form-data">
<div class="time-add clearfix">
<input type="submit" disabled name="submit" class="submit" value="提交" />
<a class="dianji" href="javascript:;">
<input type="file" name="file" id="fileupload" class="inputfile" style="position: absolute;display: none;"/>
<label class="span" for="fileupload">批量导入用餐记录</label>
</a>
</div>
</form>
3.后端代码
public function save(){ //设置文件上传的最大限制
ini_set('memory_limit','1024M');
//加载第三方类文件
vendor("PHPExcel.PHPExcel");
//防止乱码
header("Content-type:text/html;charset=utf-8");
//实例化主文件
//接收前台传过来的execl文件
$file = $_FILES['file'];
//截取文件的后缀名,转化成小写
$extension = strtolower(pathinfo($file['name'],PATHINFO_EXTENSION));
if($extension == "xlsx"){
//2007(相当于是打开接收的这个excel)
$objReader =\PHPExcel_IOFactory::createReader('Excel2007');
}else{
//2003(相当于是打开接收的这个excel)
$objReader = \PHPExcel_IOFactory::createReader('Excel5');
} $objContent = $objReader -> load($file['tmp_name']); if ($objContent){
$sheetContent = $objContent -> getSheet(0) -> toArray();
//删除第一行标题
unset($sheetContent[0]);
$time= $mothtime= strtotime(date("Y-m-d H:i:s", strtotime("-1 month")));
foreach ($sheetContent as $k => $v){
$arr['name'] = $v[1];
$arr['card_number'] = $v[2];
$arr['department_name'] = $v[3];
$arr['breakfast'] = $v[4];
$arr['lunch'] = $v[5];
$arr['dinner'] = $v[6];
$arr['supper'] = $v[7];
$arr['total'] = $v[8];
$arr['create_time'] = $time;
$res[] = $arr;
}
//删除最后一行汇总
array_pop($res); $re = Db::name('dining')
->insertAll($res);
if($re){
$this->success('导入成功 !');
}else{
$this->error('导入失败 !');
}
}else{
$this->error('请导入表格 !');
}
}
最新文章
- css3结构性伪类选择器
- SSH basics
- 论文笔记之: Deep Metric Learning via Lifted Structured Feature Embedding
- css3属性 transition transform
- 单元测试-代码覆盖率工具 -- JaCoCo
- 权重随机算法的java实现
- (二)boost库之字符串格式化
- myeclipse连接数据库oracle
- [Angular Tutorial] 0-Bootstraping
- [SHOI2017]相逢是问候
- 【动态规划】 EditDistance
- 【Hibernate】Unable to locate appropriate constructor on class原因分析
- Redis for linux安装配置之—-源码安装
- MVC通用控件库展示-MVC4.0+WebAPI+EasyUI+Knockout--SNF快速开发平台3.0
- ldap集成grafana
- LED硬件访问服务(2)——JNI/HAL
- 如何安装windows7
- ARC与Toll-Free Bridging
- java 或者 js 获取项目访问路径(域名)
- MFC中两个对话框之间数据传递