Проблема с обратной косой чертой (\ & quot;) при использовании функции fgetcsv () при импорте файла csv в Stack Overflow

Проблема с обратной косой чертой (\ «) возникает при выполнении этого примера импорта CSV.

вот мои 2 строки ввода от CSV

«Travel_and_Work_en.pdf», 840722,3 / 22/2007 10:57 AM, 10/10 / 2007 12:00
AM, 10/10/2007 9:00, «. Pdf», «e: \»

«._. Trashes», 4096,10 / 12/2010 4:55 PM, 12/8/2014 12:00 AM, 11/11/2014
3:00 утра, «. Мусоры», «е: \»

с этим кодом, я получаю вывод (отредактированный массив), как показано ниже,

while (($csv_data = fgetcsv($handle, 0, ',')) !== FALSE) {
print_r($csv_data );
}

Выход

Array (
[filename] => Travel_and_Work_en.pdf
[file_size] => 840722
[modified] => 3/22/2007 10:57 AM
[accessed] => 10/10/2007 12:00 AM
[created] => 10/10/2007 9:00 AM
[extension] => .pdf
[full_path] => e:\" ._.Trashes"
}

Проблема здесь в том, что вторая строка 1-го поля сливается с 1-й строкой последнего поля, я думаю, что это из-за \"в конце концов, как я могу решить эту проблему?

0

Решение

Вы можете попробовать использовать двойную кавычку в качестве escape-символа.

while (($csv_data = fgetcsv($handle, 0, ',', '"', '"')) !== FALSE) {
print_r($csv_data);
}

Но вы должны быть уверены, что у вас нет двойных кавычек внутри ваших полей.

2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]