Список сообщений Артур

Как вывести топ ячеек из файла
Алиган, я предлагаю написание отдельного класса для работы с файлами данных, какое расширение будет иметь этот файл совершенно не важно smile
Написал: Артур
Как вывести топ ячеек из файла
Можно попытаться уменьшить ресурсоемкость разделением файла данных на подфайлы если знаем в какой части искать данные, либо сильным модульным разделением данных на подфайлы данных объединенные одним головным файлом, так же простой поиск данных или их фильтрация в подобных файлах вполне уместен, а упорядочивание целого файла это редкая процедура, в современных СУБД уже не используемая.
Написал: Артур
Как вывести топ ячеек из файла
Алиган, согласен, предпочел бы мускул, но раз автор просит, пишу ему более сложный метод smile
Написал: Артур
Как вывести топ ячеек из файла
Теперь по вопросу темы
Во первых, автор, структурируй все свой файлы данных чтобы они имели разделители атрибутов, на пример по следующиму принципу
атрибут 1|атрибут 2|атрибут 3
атрибут 1|атрибут 2|атрибут 3
. . .
атрибут 1|атрибут 2|атрибут 3
здесь символ | будет разделять атрибуты, а перенос строки разделять сущности.
После чего учитывай весь файл в массив, в PHP это не составит проблем и разделяй каждую строку по символу разделителя атрибута, то есть |. Получим матрицу данных. Затем циклически или с помощью функций проходим по всем сущностям и меняем их местами если значение определенного атрибута меньше или больше следующего, а атрибуты с отрицательным значением удаляем полность. После чего записываем полученное в файл.
Написал: Артур
Как вывести топ ячеек из файла
Перезапись данных в файл
Наиболее ответственный момент. До этого момента данные, что называется, кэшируются, то есть обрабатываются в ОП и любые действия могут быть исправлены без обращения к файлу данных. Такой подход поддерживает транзагниттивность обращения к файлу данных. После отправки данных на запись, файл данных очищается и заполняется измененным содержанием по особой схеме представленной ниже:
array[i][j++]>>Файл>>Разделитель атрибута
array[i++][j]>>Файл>>Разделитель сущности
Написал: Артур
Как вывести топ ячеек из файла
Обработка данных в ОП
Представляет собой обработку с помощью стандартных методов работы с многомерными массивами данных и строками.
Написал: Артур
Как вывести топ ячеек из файла
Чтение файла в ОП
Есть получение строк файла в массив строк ОП. До появления РБД (реляционных баз данных) чтение проходило в одномерный массив строк. После появления систем разграничения сущностей и атрибутов чтение стало проходить в матрицу строк следующего вида:
Файл->Строка->Данные между разделителями>>array[i][j]
где i - номер сущности
j - номер атрибута
Таким образом любой файл с подходящей структурой может быть представлен в памяти в виде реляционной базы данных
Написал: Артур
Как вывести топ ячеек из файла
Добрый вечер.
Давненько здесь небыл smile
Собственно по теме скажу, что такая система работы с удаленными данными, если я не ошибаюсь, когда то получила название - база данных с удаленными файлами. Немного о ней, а после вернусь к теме.
ФБД(файловая база данных без СУБД)
Принцип работы у таких баз данных схож с обработкой файлов на таких языках программирования как С/С+ и Pascal и состоит из нескольких шагов:
1. Чтение файла в ОП (оперативная память)
2. Обработка данных в ОП
3. Перезапись данных в файл
Написал: Артур