新聞中心
load方法讀取Excel文件,最后遍歷數(shù)據(jù)并插入數(shù)據(jù)庫。ThinkPHP如何把Excel導(dǎo)入

創(chuàng)新互聯(lián)從2013年創(chuàng)立,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項(xiàng)目成都網(wǎng)站建設(shè)、成都做網(wǎng)站網(wǎng)站策劃,項(xiàng)目實(shí)施與項(xiàng)目整合能力。我們以讓每一個(gè)夢想脫穎而出為使命,1280元大英做網(wǎng)站,已為上家服務(wù),為大英各地企業(yè)和個(gè)人服務(wù),聯(lián)系電話:13518219792
準(zhǔn)備工作
1、安裝PHPExcel庫:在ThinkPHP項(xiàng)目中,可以使用Composer來安裝PHPExcel庫,打開命令行工具,進(jìn)入項(xiàng)目根目錄,執(zhí)行以下命令:
composer require phpoffice/phpexcel
2、創(chuàng)建一個(gè)新的控制器:在application目錄下的controller文件夾中,創(chuàng)建一個(gè)名為ImportExcel的控制器文件。
導(dǎo)入Excel數(shù)據(jù)
1、在ImportExcel控制器中,編寫一個(gè)名為importAction的方法,用于處理Excel導(dǎo)入操作,代碼如下:
error('文件不存在');
}
// 讀取Excel文件內(nèi)容
try {
$objPHPExcel = PHPExcel_IOFactory::load($filePath . $fileName);
$worksheet = $objPHPExcel>getActiveSheet();
// 獲取表頭信息
$headRow = $worksheet>rangeToArray('A1:C1', null, true, false)>toArray();
$headData = array_shift($headRow); // 取出第一行數(shù)據(jù)作為表頭信息
// 遍歷表格數(shù)據(jù)并插入數(shù)據(jù)庫(根據(jù)實(shí)際情況修改數(shù)據(jù)庫操作)
$dataList = []; // 存儲(chǔ)讀取到的數(shù)據(jù)列表
foreach ($worksheet>toArray() as $row) {
if (empty($row)) continue; // 跳過空行
$data = []; // 存儲(chǔ)當(dāng)前行的數(shù)據(jù)
foreach ($headData as $key => $value) {
$cell = new PHPExcel_Cell($row[$key]);
$data[] = $cell>getValue(); // 獲取單元格的值并存入數(shù)組
}
$dataList[] = $data; // 將當(dāng)前行的數(shù)據(jù)存入數(shù)據(jù)列表中
}
// 插入數(shù)據(jù)庫操作(根據(jù)實(shí)際情況修改數(shù)據(jù)庫操作)
// ...
// 返回成功信息
$this>success('導(dǎo)入成功');
} catch (PHPExcel_Exception $e) {
$this>error('導(dǎo)入失敗:' . $e>getMessage());
} catch (Exception $e) {
$this>error('導(dǎo)入失?。? . $e>getMessage());
}
}
}
?>
2、在路由配置文件(route.php)中添加路由規(guī)則,以便訪問該控制器方法,代碼如下:
Route::get('import', 'index/ImportExcel/import'); // 訪問http://yourdomain/import時(shí)調(diào)用importAction方法進(jìn)行導(dǎo)入操作
3、在瀏覽器中訪問http://yourdomain/import,即可開始導(dǎo)入Excel數(shù)據(jù),請確保已將待導(dǎo)入的Excel文件放置在指定的Uploads文件夾中。
4、根據(jù)實(shí)際需求,在上述代碼中的數(shù)據(jù)庫操作部分進(jìn)行相應(yīng)的修改,以完成數(shù)據(jù)的導(dǎo)入和處理,可以使用ThinkPHP的ORM模型進(jìn)行數(shù)據(jù)庫操作,或者使用原生SQL語句進(jìn)行數(shù)據(jù)庫操作。
標(biāo)題名稱:thinkphp6excel導(dǎo)入
轉(zhuǎn)載來源:http://www.fisionsoft.com.cn/article/ccophsc.html


咨詢
建站咨詢
