要将Excel中的重复5行数据合并成一行并导入到数据库中,你可以按照以下步骤操作:
phpoffice/phpspreadsheet
库来读取和处理Excel文件。YourModel
的Eloquent模型对应数据库表。YourModel
的Eloquent模型对应数据库表。use PhpOffice\PhpSpreadsheet\IOFactory;
use App\YourModel;
$spreadsheet = IOFactory::load('path/to/your/file.xlsx');
$worksheet = $spreadsheet->getActiveSheet();
$data = [];
foreach ($worksheet->getRowIterator() as $row) {
$cellIterator = $row->getCellIterator();
$cellIterator->setIterateOnlyExistingCells(false);
$rowData = [];
foreach ($cellIterator as $cell) {
$rowData[] = $cell->getValue();
}
$data[] = $rowData;
}
$processedData = [];
$i = 0;
while ($i < count($data)) {
$group = array_slice($data, $i, 5);
$mergedRow = [];
foreach ($group[0] as $key => $value) {
$mergedValue = implode(' | ', array_column($group, $key));
$mergedRow[$key] = $mergedValue;
}
$processedData[] = $mergedRow;
$i += 5;
}
foreach ($processedData as $row) {
YourModel::create($row);
}
通过以上步骤,你可以将Excel中的重复5行数据合并成一行并导入到数据库中。
领取专属 10元无门槛券
手把手带您无忧上云