我需要解析一个csv,但是此csv格式不正确,在某些字段中,有新行(\ n)破坏了我的解析器。
有什么办法可以避免这种情况?目前,我正在这样解析:
$this->myId = 10
但是当str_getcsv找到if($file){
$full_path = DRUPAL_ROOT . '/' . file_stream_wrapper_get_instance_by_uri($file->uri)->getDirectoryPath() . '/' . file_uri_target($file->uri);
$csvData = file_get_contents($full_path);
if (!mb_detect_encoding($csvData, 'UTF-8')) $csvData = utf8_encode($csvData);
//$lines = explode(",", $csvData);
$lines = array_map("str_getcsv", file($full_path), array_fill(0, count(file($full_path)), ';'));
dsm($csvData);
foreach ($lines as $line){
dsm($line);
}
时,他创建了新行,而我无法正确解析csv(我无法修改来自其他人的csv)。
也许有一种方法可以从字段中删除\n
而不是从行尾删除?