ВНИМАНИЕ: Запись на курсы по HTML, CSS, JavaScript, PHP, Python, React, Vue, Laravel и другим фреймворкам и CMS,
а также: помощь в поиске работы и заказов, стажировка на реальных проектах→
305 of 410 menu
Вступайте в телеграмм-канал сайта code.mu: новинки, статьи, интервью, задачи, бесплатные курсы и тренинги. Жми для вступления:)

Функция fgetcsv

Функция fgetcsv читает строку из файла и разбирает ее на поля в формате CSV. Первым параметром функция принимает указатель на открытый файл, вторым - максимальную длину строки, третьим - разделитель полей (по умолчанию запятая), четвертым - символ ограничителя (по умолчанию двойные кавычки), пятым - символ экранирования.

Синтаксис

fgetcsv( resource $handle, int $length = 0, string $separator = ",", string $enclosure = "\"", string $escape = "\" );

Пример

Прочитаем CSV файл построчно и выведем содержимое:

<?php $file = fopen('data.csv', 'r'); while (($row = fgetcsv($file)) !== false) { print_r($row); } fclose($file); ?>

Результат выполнения кода для файла с содержимым "a,b,c":

['a', 'b', 'c']

Пример

Чтение CSV с указанием максимальной длины строки и кастомного разделителя:

<?php $file = fopen('data.csv', 'r'); while (($row = fgetcsv($file, 1000, ';')) !== false) { print_r($row); } fclose($file); ?>

Результат выполнения кода для файла с содержимым "a;b;c":

['a', 'b', 'c']

Пример

Чтение CSV с кавычками и экранированием:

<?php $file = fopen('data.csv', 'r'); while (($row = fgetcsv($file, 0, ',', '"', '\')) !== false) { print_r($row); } fclose($file); ?>

Результат выполнения кода для файла с содержимым '"a,b",c,"d\"e"':

['a,b', 'c', 'd"e']

Смотрите также

  • функцию fputcsv,
    которая записывает данные в CSV
  • функцию fgets,
    которая читает строку из файла
byenru