PHP Excel導入MySQL實現方法
在實際項目中,經常會遇到需要將Excel表格中的數據導入到MySQL數據庫中的需求。利用PHP Excel庫可以快速、準確地將Excel表格數據導入到MySQL數據庫中。
下面介紹一下PHP Excel導入MySQL的具體實現方法:
1.利用PHPExcel讀取Excel表格
require_once 'PHPExcel/PHPExcel.php'; $excel = PHPExcel_IOFactory::load('文件路徑'); $sheet = $excel->getActiveSheet(); $rows = $sheet->getHighestRow(); $cols = PHPExcel_Cell::columnIndexFromString($sheet->getHighestColumn());
上述代碼通過引入PHP Excel庫,加載Excel文件,獲取表格行列數,并將表格中的數據讀取到二維數組中。
2.連接MySQL數據庫
$host = 'localhost'; $user = 'root'; $password = 'password'; $dbname = 'test'; $mysqli = new mysqli($host, $user, $password, $dbname); if ($mysqli->connect_error) { die('Connect Error (' . $mysqli->connect_errno . ') ' . $mysqli->connect_error); }
上述代碼中,我們使用mysqli庫連接MySQL數據庫,并進行相關的錯誤處理。
3.將Excel表格數據插入數據庫
$sql = "INSERT INTO table_name (col1, col2, col3) VALUES (?,?,?)"; $stmt = $mysqli->prepare($sql); for ($i = 2; $i<= $rows; ++$i) { for ($j = 0; $j< $cols; ++$j) { $cell = $sheet->getCellByColumnAndRow($j, $i); $data[$j] = $cell->getValue(); } $stmt->bind_param('sss', $data[0], $data[1], $data[2]); $stmt->execute(); } $stmt->close(); $mysqli->close();
上述代碼中,我們利用預處理語句和循環將Excel表格中的數據插入到MySQL數據庫中。
完整代碼實例
require_once 'PHPExcel/PHPExcel.php'; $excel = PHPExcel_IOFactory::load('文件路徑'); $sheet = $excel->getActiveSheet(); $rows = $sheet->getHighestRow(); $cols = PHPExcel_Cell::columnIndexFromString($sheet->getHighestColumn()); $host = 'localhost'; $user = 'root'; $password = 'password'; $dbname = 'test'; $mysqli = new mysqli($host, $user, $password, $dbname); if ($mysqli->connect_error) { die('Connect Error (' . $mysqli->connect_errno . ') ' . $mysqli->connect_error); } $sql = "INSERT INTO table_name (col1, col2, col3) VALUES (?,?,?)"; $stmt = $mysqli->prepare($sql); for ($i = 2; $i<= $rows; ++$i) { for ($j = 0; $j< $cols; ++$j) { $cell = $sheet->getCellByColumnAndRow($j, $i); $data[$j] = $cell->getValue(); } $stmt->bind_param('sss', $data[0], $data[1], $data[2]); $stmt->execute(); } $stmt->close(); $mysqli->close();
以上就是利用PHP Excel庫將Excel表格數據導入到MySQL數據庫的實現方法。借助PHP Excel,我們可以快速地將Excel表格中的數據插入到MySQL數據庫中,進一步提升項目的效率。
上一篇php excel導出