phpexcel导入数据库
介绍PHPExcel
PHPExcel是一个在PHP中用来读写电子表格的库。使用PHPExcel可以创建、读取、写入和操作多种格式的电子表格,如xls、xlsx、ods等。同时,PHPExcel提供了多种常用的电子表格操作功能,如单元格格式化、公式计算、数据筛选等等。
导入Excel到PHP
从PHPExcel中读取Excel表格数据的过程可以分为以下几个步骤。
- 引入PHPExcel类文件
- 实例化PHPExcel类,用于读取Excel文件
- 选择要处理的Excel文件,如.xls或.xlsx格式
- 打开Excel文件
- 循环读取文件中的每一行数据,保存在二维数组中
- 将数据存入数据库
将数据存入数组
将数据存入数组的过程简单易懂,通过循环读取每行数据,使用二维数组存储每个单元格的信息,如下所示:
$fileName = 'test.xlsx';$tmpArr = array();PHPExcel_Static_Helper::setLocale('en'); $objReader = PHPExcel_IOFactory::createReader('Excel2007'); $objPHPExcel = $objReader->load($fileName); foreach ($objPHPExcel->getWorksheetIterator() as $worksheet) { $xls_arr = $worksheet->toArray(); $rowIndex = 0; foreach ($xls_arr as $rows) { if ($rowIndex < 1) { $rowIndex++; continue; } $colIndex = 0; foreach ($rows as $cell) { $tmpArr[$rowIndex - 1][$colIndex] = $cell; $colIndex++; } $rowIndex++; }}
连接数据库
将Excel表格数据导入到数据库时需要先创建数据库和表格,或者使用已有的数据库和表格。连接数据库的过程如下所示:
// 配置数据库账户信息 $user = 'root'; $password = 'root'; $host = 'localhost'; $dbName = 'testDB'; $port = '8889'; // 连接数据库 $con = mysqli_connect($host, $user, $password, $dbName, $port); mysqli_set_charset($con,"utf8");
将数据存入数据库
将读取到的Excel表格数据存储到数据库中,需要使用php中的insert语句。在处理数据之前,我们可以先做一些数据的处理,比如判断数据类型,转换数据类型等等。插入数据的代码如下所示:
foreach ($tmpArr as $k => $v) { $sql = "insert into tablename (字段一, 字段二, 字段三, 字段四) values (" . $v['单元格一'] . ",'" . $v['单元格二'] . "','" . $v['单元格三'] . "'," . $v['单元格四'] . ")"; $result = mysqli_query($con, $sql);}
结束语
PHPExcel提供了非常强大和灵活的Excel读取和操作功能,可以满足各种读取、写入电子表格的需求。本篇文章介绍了PHPExcel导入数据库的基本思路,可以让开发者快速实现Excel数据的导入操作。