Вы можете изменить различные настройки при использовании функции fgetcsv :
fgetcsv (
resource $handle
[, int $length = 0
[, string $delimiter = ","
[, string $enclosure = '"'
[, string $escape = "\\" ]]]]
)
Вы можете установить разделитель на любой нужный символ (пробел , tab, pipe и т. д. c).
Вложение предназначено для случаев, когда необходимо включить содержимое, которое обычно нарушает формат файла (например, наличие запятой в содержимом, когда запятая используется в качестве разделителя). ). По умолчанию используется двойная кавычка. Например:
id, имя
1, Тед Менд
2, Трейси Гейл
4, Джон Ди, младший
Строка с идентификатором 4 может привести к разрыву файла, поскольку в имени есть запятая, но перенос символа с символом включения заставляет синтаксический анализатор игнорировать символы прерывания внутри. Следующие значения будут действительны, и запятая перед младшим не вызовет ошибку или неверное прочтение строк:
id, имя
1, "Ted Mend"
2 , "Tracy Gale"
4, "John Dee, Jr"
Последний аргумент, escape-символ, используется, если вам все еще нужно использовать его в прилагаемой строке ( например, двойная кавычка в двойных кавычках). Вы можете поместить escape-символ перед любым символом двойной кавычки в содержимом двойной кавычки, чтобы убедиться, что он не нарушает формат:
id, title, type
1, "Up" "," mov ie "
2," Унесенные ветром "," mov ie "
3," \ "The Witcher 3 \" "," video- game "
Обратите внимание, что в двойных кавычках в названии видеоигры есть обратная косая черта sh. Это позволяет анализатору знать, что двойные кавычки вокруг заголовка должны быть частью строки заголовка, а не концом содержимого столбца.