用phpExcel导入数据到mysql数据库

我用的是thinkphp3.1框架,其他框架如ci、laravel等框架只需要将phpExcel的文件包放在对应的位置,然后能引用到就可以了。

首先,下载phpExcel的文件包,可以去官网下载,百度一下 有很多资源。我下载后放在了thinkphp的vendor文件夹,如图所示:

这里简单的讲下PHPExcel.php里面是些什么,就是一些已经封装好了的方法,所以使用起来很简单,只需要在用的时候先载入这个PHPExcel.php就可以直接调用里面的方法了,其他的都不用管,一切就是这么简简单单,所以php能够进行快速开发的一个重要原因就是有很多外部的开源插件,直接拿来用就可以了。

那么这里面有哪些方法呢?看图说话:


这只是截图中的一部分,大概就是一些设置、和获取单元格数据的方法,可以看phpexceil的文档说明,我们重点讲怎么导入数据,(导出数据也是同理)

要导入数据(以excel表格为例)

首先上传excel,这里为什么要上传一个excel,其实只要知道excel在本地的地址,也可以直接读取,考虑到在服务器上部署以后的情况,所以需要先上传excel文件,代码如下:




代码都贴出来了,其实跟上传图片是一样的,注意这里设置了只能使用.xls类型的excel表格,比如wps的那些就pass掉了,这里其实就是返回了以excel表格每一行为一个键的数组,那么现在大家都应该知道怎么做了,一般对于数据不大的情况,就直接用thinkphp的addAll()方法进行批量插入数据库,就实现了导入功能。

但是对于excel表格数据量特别大,而且要经过一些数据处理才能插入数据库的情况,通常除了要在上传时候控制excel表格的大小,还可以通过一张临时表,将表格数据存储下来,然后再对临时表里面的数据进行处理,这里就可以通过分页来查找临时表里面的数据,对小部分数据进行处理后再插入数据库



基本上到这里就可以算完成了!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
很好,我了解了你的问题。PHPExcel是一个强大的开源库,用于将Excel数据导入MySQL数据库中。您可以使用PHPExcel自动化Excel打开、读取和处理功能,然后将其转换为MySQL中的相关数据。以下是一些简单的步骤来实现这一点: 1. 下载和安装PHPExcel库。 2. 使用PHPExcel打开Excel文件并读取需要的列和行数据。 3. 通过MySQL连接,将数据插入MySQL数据库中的表中。 以下是PHP代码示例: ``` // 导入PHPExcel库 require_once 'PHPExcel.php'; // 连接数据库 $servername = "localhost"; $username = "username"; $password = "password"; $dbname = "database"; $conn = new mysqli($servername, $username, $password, $dbname); // 检查连接是否成功 if ($conn->connect_error) { die("Connection failed: " . $conn->connect_error); } // 创建Excel对象并加载文件 $objReader = PHPExcel_IOFactory::createReader('Excel2007'); $objPHPExcel = $objReader->load("example.xlsx"); // 获取工作表 $worksheet = $objPHPExcel->getActiveSheet(); // 遍历所有行并将其插入数据库中 foreach ($worksheet->getRowIterator() as $row) { $cellIterator = $row->getCellIterator(); $cellIterator->setIterateOnlyExistingCells(false); $data = array(); foreach ($cellIterator as $cell) { $data[] = $cell->getValue(); } $sql = "INSERT INTO example_table (column1, column2, column3) VALUES ('" . $data[0] . "', '" . $data[1] . "', '" . $data[2] . "')"; $result = $conn->query($sql); } $conn->close(); ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值