用Thinkphp上传导入csv文件并去除重复数据

本文介绍如何使用Thinkphp3实现CSV文件上传,并在导入数据库前去除重复数据。首先搭建上传界面,接着处理文件上传,检测文件编码并转换为UTF-8。然后,读取CSV文件内容,通过fgetcsv逐行处理,结合数据库查询过滤重复数据。最后,将数据导入到数据库,并提供下载日志文件的功能。代码中存在优化空间,期待改进建议。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

        随着二胎政策的放开,中国的人口又一增高,数据也越来越多,那么数据的处理就尤为重要,在数据库中一条一条的添加很繁琐,批量的导入数据就显得很方便,导入并导入时,要记得编码格式要注意!那么实现此功能的思路大致如下:(附图)

  1.  先搭建好上传的界面
  2.  通过点击上传按钮,将所上传的表选中 
  3. 再进行导入
  4. 数据读取
  5. 依次将读取的数据存入数据库( 将数据进行筛选)
  6. 最后导入完毕下载日志文件供需要的用户 
        

         

代码展示如下:

//上传方法

 public function upload(){
if (IS_GET) {
$this->display();
exit();
}
$upload = new \Think\Upload();//实例化上传类
$upload->maxSize = 0;//设置上传文件大小
$upload->exts = array('csv');//设置上传文件类型
$upload->rootPath = './Public/Uploads/';//设置根目录
$upload->savePath = '';//设置子目录
//上传文件
$info = $upload->upload();//☆ 此处调用tp自带的upload()方法
if (!$info) {

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值