在這篇文章中,我將介紹如何使用PHP將excel檔案匯入mysql資料庫。有時候我們需要從管理面板添加數據,如產品,項目,用戶,電子郵件等。如果我們的資料很少,那麼手動添加就可以了,但是如果我們的excel檔案或csv檔案的資料比較多,那麼儲存資料的時間就比較長,這時我們就需要直接匯入xls檔案或是csv檔案到mysql資料庫中。
下面我們將使用Spreadsheet_Excel_Reader類別將excel檔案匯入php資料庫,步驟如下:
##1.下載類別庫2.建立db_config.php檔案3.建立index . php檔案#4.建立excelUpload.php5.建立上傳資料夾步驟1:下載類別庫
從GitHub下載PHP Excel Reader函式庫,下載位址:https://github.com/nuovo/spreadsheet-reader
下載後將其解壓縮到根目錄並將其重新命名為「library」。
步驟2:建立db_config.php檔案
為資料庫設定建立db_config.php文件,在這個檔案中,你必須設定資料庫主機、資料庫使用者名稱、資料庫密碼、資料庫名稱。該文件將用於將資料儲存到資料庫中。 程式碼如下:db_config.php
<?php $dbHost = "localhost"; $dbDatabase = "h_php"; $dbPasswrod = "root"; $dbUser = "root"; $mysqli = new mysqli($dbHost, $dbUser, $dbPasswrod, $dbDatabase); ?>
步驟3:建立index.php檔案
在根目錄中建立index.php文件,在這個文件中,我使用bootstrap建立了一個簡單的表單,實現點擊按鈕後導入選擇excel文件的功能。 程式碼如下:index . php
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> <link rel="stylesheet" type="text/css" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css"> </head> <body> <div class="container"> <h1>Excel上传</h1> <form method="POST" action="excelUpload.php" enctype="multipart/form-data"> <div class="form-group"> <label>上传Excel文件</label> <input type="file" name="file" class="form-control"> </div> <div class="form-group"> <button type="submit" name="Submit" class="btn btn-success">上传</button> </div> </form> </div> </body> </html>前台樣式如下:
##步驟4:建立excelUpload.php檔案
建立excelUpload.php檔案來管理匯入資料庫的數據,在這個步驟中,我們必須建立
uploads資料夾來儲存excel檔案到這個檔案中,然後讀取該檔案。 程式碼如下:
excelUpload.php<?php
require('library/php-excel-reader/excel_reader2.php');
require('library/SpreadsheetReader.php');
require('db_config.php');
if(isset($_POST['Submit'])){
$mimes = ['application/vnd.ms-excel','text/xls','text/xlsx','application/vnd.oasis.opendocument.spreadsheet'];
if(in_array($_FILES["file"]["type"],$mimes)){
$uploadFilePath = 'uploads/'.basename($_FILES['file']['name']);
move_uploaded_file($_FILES['file']['tmp_name'], $uploadFilePath);
$Reader = new SpreadsheetReader($uploadFilePath);
$totalSheet = count($Reader->sheets());
echo "你有 ".$totalSheet." 张表".
$html="<table border='1'>";
$html.="<tr><th>标题</th><th>描述</th></tr>";
for($i=0;$i<$totalSheet;$i++){
$Reader->ChangeSheet($i);
foreach ($Reader as $Row)
{
$html.="<tr>";
$title = isset($Row[0]) ? $Row[0] : '';
$description = isset($Row[1]) ? $Row[1] : '';
$html.="<td>".$title."</td>";
$html.="<td>".$description."</td>";
$html.="</tr>";
$query = "insert into items(title,description) values('".$title."','".$description."')";
$mysqli->query($query);
}
}
$html.="</table>";
echo $html;
echo "<br />添加到数据库的数据";
}else {
die("<br/>sorry,不允许此文件类型上传,只允许Excel文件。");
}
}
?>
相關影片教學推薦:《
》《 mysql教學》這篇文章是關於PHP將excel檔案匯入mysql資料庫的方法介紹,希望對需要的朋友有幫助!
以上是PHP如何將excel檔案匯入mysql資料庫?的詳細內容。更多資訊請關注PHP中文網其他相關文章!