如何在laravel中提交excel文件时删除逗号和空格



我正试图将excel文件中的数据保存到我的数据库中,我想检查其中是否有逗号或空格,如果有,我想将其删除。

我使用的是phpoffice/phpelectronicsheet和laravel,如果可能的话,如果可以的话,我想使用phpoffice/pphpelectronicsheets。

这是我的代码

$xl = IOFactory::load($path);
$sheet = $xl->getSheetByName('Products');
$c = $sheet->getHighestDataColumn();
$r = $sheet->getHighestDataRow();
$data = $sheet->rangeToArray("A1:{$c}{$r}", null, false);
$headers = array_shift($data);
$projects = [];
foreach ($data as $row) {
$entry = array_combine($headers, $row);
$projects[] = [
'name' => $entry['Name'],
'description' => $entry['description'],
'price' => $entry['price'],
];
}
return $projects;

尝试创建一个函数:

function cleanData($data) {
$data= str_replace( ',', '', $data);
$data= preg_replace('/s+/', '', $data);
return $data;
}

并使用它:

foreach ($data as $row) {
$entry = array_combine($headers, $row);
$projects[] = [
'name' => cleanData($entry['Name']),
'description' => cleanData($entry['description'],
'price' => cleanData($entry['price']),
];

}

最新更新