Функция читает строку из файла и разбивает ее по символу delito. Строковый параметр delim должен содержать только один символ, иначе учитывается лишь первый символ строки. Функция возвращает получившийся массив или , false, если достигнут конец файла. Пустые строки в файле не игнорируются, а возвращаются как массив из одного элемента - пустой строки. Параметр length задает максимальную длину строки точно так же, как это делается В функции fgets().
Формат CSV является одним из форматов, в котором может сохранять файлы MS Excel. В листинге 6.41 приведен пример чтения созданного MS Excel файла file.csv, содержащего пароли пользователей.
Операции записи и чтения осуществляются быстрее при работе с файловой системой, по сравнению с иерархической базой данных и, конечно, быстрее, чем при работе с реляционной базой данных. Поэтому там, где нужна скорость (например, в поисковых системах), прибегают к плоским файлам - API (набор функций) к драйверу, обеспечивающему простейшие операции помещения записи в файл и извлечения их. То есть создается подобие примитивной базы данных, обеспечивающей работу с файлами как с набором строк. Разумеется, в случае плоских файлов не может идти речи о поиске или каких-либо встроенных функциях- для этого предназначены реляционные базы данных, например MySQL, которая рассмотрена в следующей главе.
В предыдущей главе были продемонстрированы приемы работы с индексными файлами, состоящими из записей, каждая из которых представляет собой пару "ключ - значение". Плоские файлы - это точно такие же файлы, но часто в двоичном или упакованном виде, позволяющем быстрее осуществлять операции извлечения, удаления и редактирования записей при помощи стандартного набора функций, избавляя программиста от забот о создании собственных библиотек для работы с текстовыми файлами. В состав РНР входит большое число расширений, позволяющих работать с различными видами плоских файлов и разновидностей баз данных Berkeley. Стандартным в настоящий момент считается доступ через расширение dba-функций (Database Abstraction Layer) - единый интерфейс к такого рода файлам.