SplFileObject::fgetcsv Получает строку из указателя файла и анализирует её на CSV-поля &reftitle.description; public arrayfalseSplFileObject::fgetcsv stringseparator"," stringenclosure"\"" stringescape"\\" Метод получает строку из CSV-файла и возвращает массив с прочитанными полями. Метод учитывает настройки локали. Если для константы LC_CTYPE установили значение, например, en_US.UTF-8, метод может неправильно прочитать файлы в однобайтовой кодировке. &reftitle.parameters; separator Разделитель полей (только один однобайтовый символ). По умолчанию это запятая или символ, который задали методом SplFileObject::setCsvControl. enclosure Символ ограничителя полей (только один однобайтовый символ). По умолчанию это двойные кавычки или значение, которое установили методом SplFileObject::setCsvControl. escape Экранирующий символ (не более одного однобайтового символа). По умолчанию это обратный слеш (\) или значение, которое установили методом SplFileObject::setCsvControl. Пустая строка ("") отключает собственный механизм экранирования. Обычно символ enclosure экранируется внутри поля путём удваивания; однако, символ escape разрешается использовать как альтернативу. Поэтому у значений по умолчанию для этих параметров "" и \" одинаковые значения. Кроме разрешения экранировать символ enclosure символ escape не имеет особого значения; он даже не экранирует самого себя. &reftitle.returnvalues; Метод возвращает массив, который содержит данные прочитанной строки, или &false;, если возникла ошибка. Пустая строка CSV-файла будет возвращаться в виде массива, который содержит единственный элемент &null;, если не используется SplFileObject::SKIP_EMPTY | SplFileObject::DROP_NEW_LINE, и тогда пустые строки пропускаются. &reftitle.changelog; &Version; &Description; 7.4.0 Теперь параметр escape принимает пустую строку для отключения собственного механизма экранирования. &reftitle.examples; Пример использования метода <methodname>SplFileObject::fgetcsv</methodname> eof()) { var_dump($file->fgetcsv()); } ?> ]]> Пример использования <constant>SplFileObject::READ_CSV</constant> setFlags(SplFileObject::READ_CSV); foreach ($file as $row) { list($animal, $class, $legs) = $row; printf("A %s is a %s with %d legs\n", $animal, $class, $legs); } ?> ]]> Contents of animals.csv &example.outputs.similar; &reftitle.seealso; SplFileObject::setCsvControl SplFileObject::setFlags SplFileObject::READ_CSV SplFileObject::current