Excel 是 Microsoft Office 套件中的常用工具,广泛应用于数据输入、输出和编辑。在Web应用中,我们常常需要将Excel中的数据导入到数据库中进行处理或展示。本文将介绍如何通过 PHP 和 XML 来实现这一目标。
PHPExcel 是一个功能强大的 PHP 库,可以帮助你处理各种 Excel 格式的文件,包括 .xls 和 .xlsx 格式。首先,你需要下载并安装 PHPExcel 库。安装完成后,你就可以使用 PHPExcel 提供的丰富功能来处理 Excel 文件了。
接下来,我们将介绍如何使用 PHPExcel 库读取 Excel 文件中的数据。以下是一个代码示例:
require_once 'PHPExcel/PHPExcel.php';
$filename = 'data.xls';
$objPHPExcel = PHPExcel_IOFactory::load($filename);
$sheet = $objPHPExcel->getActiveSheet();
$data = array();
foreach ($sheet->getRowIterator() as $row) {
$rowData = array();
foreach ($row->getCellIterator() as $cell) {
$rowData[] = $cell->getValue();
}
$data[] = $rowData;
}
print_r($data);
以上代码演示了如何加载 Excel 文件,并将其内容读取到一个二维数组中。每一行的数据都被提取出来并存储在 $data 数组中。
成功读取 Excel 数据后,下一步是将这些数据导入到数据库中。以下是将数据导入 MySQL 数据库的代码示例:
require_once 'PHPExcel/PHPExcel.php';
$filename = 'data.xls';
$objPHPExcel = PHPExcel_IOFactory::load($filename);
$sheet = $objPHPExcel->getActiveSheet();
$data = array();
foreach ($sheet->getRowIterator() as $row) {
$rowData = array();
foreach ($row->getCellIterator() as $cell) {
$rowData[] = $cell->getValue();
}
$data[] = $rowData;
}
$conn = new mysqli('localhost', 'username', 'password', 'database');
if ($conn->connect_error) {
die('Connection failed: ' . $conn->connect_error);
}
foreach ($data as $row) {
$name = $row[0];
$age = $row[1];
$sql = "INSERT INTO students (name, age) VALUES ('$name', $age)";
if ($conn->query($sql) === TRUE) {
echo 'Record inserted successfully';
} else {
echo 'Error inserting record: ' . $conn->error;
}
}
$conn->close();
该代码通过连接到 MySQL 数据库,将 Excel 中每一行的姓名和年龄数据插入到数据库的 students 表中。
本文展示了如何使用 PHP 和 XML 来读取 Excel 数据并导入到数据库中。通过 PHPExcel 库,开发者可以方便地处理各种 Excel 文件,轻松实现数据导入功能。此方法非常适用于从 Excel 导入用户信息、商品列表等数据,能大大提高数据录入的效率。