PHP Excel 导入数据
PHP Excel 是 PHP 的一个开源类库,它可以让我们方便地读取、写入和操作 Excel 文件,而且支持多种文件格式,例如 .xls、.xlsx 和 .csv 等等。
在本文中,我们将主要介绍 PHP Excel 的导入功能,也就是从 Excel 文件中读取数据并导入到数据库中。
安装 PHP Excel
首先,我们需要下载并安装 PHP Excel。可以直接从官网下载最新版本的 PHP Excel,也可以使用 Composer 进行安装。
上面的代码是一个非常简单的示例,就可以从 Excel 文件中读取数据并将其加载到 PHPExcel 对象中。
解析 Excel 文件
一旦我们有了 PHPExcel 对象,我们就可以开始解析 Excel 文件,提取数据并将其导入到数据库中。
首先,我们需要确定需要读取的单元格的坐标。例如,如果我们想读取 Excel 文件的第一个工作表(worksheet)中的第二行、第三列中的单元格:
getActiveSheet()->getCell("C2");
$value = $cell->getValue();
'); ?>
在上面的代码中,我们首先使用 getActiveSheet() 方法获取当前表格,然后使用 getCell() 方法获取指定单元格的数据,并将其保存在 $value 变量中。
如果我们需要一次读取整个工作表的数据,可以使用 getHighestRow() 和 getHighestColumn() 方法来获取最后一行和最后一列的行号和列号:
getActiveSheet();
$highestRow = $worksheet->getHighestRow();
$highestColumn = $worksheet->getHighestColumn();
for ($row = 1; $row<= $highestRow; $row++) {
for ($column = "A"; $column<= $highestColumn; $column++) {
$cell = $worksheet->getCell($column . $row);
$value = $cell->getValue();
// 导入数据到数据库中
}
}
'); ?>
上面的代码将读取整个工作表的数据,并使用双层循环遍历每个单元格,将单元格的值保存在 $value 变量中,并将其导入到数据库中。
导入数据到数据库
一旦我们已经从 Excel 文件中提取了数据,我们就可以开始将其导入到数据库中了。
以下是一个示例代码,它将从 Excel 文件中读取数据,并将其导入到 MySQL 数据库中:
getActiveSheet();
$highestRow = $worksheet->getHighestRow();
$highestColumn = $worksheet->getHighestColumn();
// 循环遍历每个单元格,并将数据导入到数据库中
for ($row = 2; $row<= $highestRow; $row++) {
$name = $worksheet->getCellByColumnAndRow(0, $row)->getValue();
$age = $worksheet->getCellByColumnAndRow(1, $row)->getCalculatedValue();
$gender = $worksheet->getCellByColumnAndRow(2, $row)->getValue();
$sql = "INSERT INTO `users` ( `name`, `age`, `gender`) VALUES ( '$name', '$age', '$gender' )";
mysqli_query($connection, $sql) or die(mysqli_error($connection));
}
'); ?>
上面的代码首先连接数据库,然后从 Excel 文件中读取数据,并使用循环遍历将其导入到数据库中。请注意,我们使用 getCellByColumnAndRow() 方法获取指定单元格的数据,并使用 mysqli_query() 函数将其插入到数据库表中。
结束语
在本文中,我们已经详细介绍了如何使用 PHP Excel 导入数据,包括从 Excel 文件中解析数据和将其导入到 MySQL 数据库中。您可以根据自己的需要进行修改和扩展,以满足特定的应用程序要求。