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 導入用戶信息、商品列表等數據,能大大提高數據錄入的效率。