有一个CSV文件,其中包含几列,例如:
(身份证、价格、地址)
但在价格栏中,有些奇怪
例如,如果一行中没有价格数据,则会显示"-"
另外,如果价格要大得多。 数字之间会有逗号,它将显示: $1,123,234.12
如何处理这种情况?
例如:
(1000, -, 纽约)
(1001,1,100,100美元,波士顿)
(1002, $100, 洛杉矶)
在CSV文件中,当使用PHP将这些数据插入MySQL数据库时,它应该显示:
(1000, 0, 纽约)
(1001, 1100100, 波士顿)
(1002, 100, 洛杉矶)
在数据库中
有人告诉我如何处理这个问题吗?我不知道如何处理这种情况。
您可以在导入之前进行一些清理,例如
function csv_clean($csv_file){
$data = file_get_contents($csv_file);
$data = str_replace(' -,', ' NULL,', $data);
$data = preg_replace('/(?<='d),(?='d)|'$/', '', $data);
file_put_contents($csv_file, $data);
}
csv_clean('data.csv');
这将以所需的格式保存CSV文件,然后您可以导入它。