Форум программистов, компьютерный форум, киберфорум
Наши страницы
PHP для начинающих
Войти
Регистрация
Восстановить пароль
 
Max Power
0 / 0 / 0
Регистрация: 02.11.2014
Сообщений: 6
1

Быстрый способ удалить строчку из файла

02.11.2014, 22:15. Просмотров 417. Ответов 1
Метки нет (Все метки)

Приветствую всех!
Нужно следующее:
Есть файл numbers.txt (5-10 Мегабайт), каждая строчка - 1 цифровой номер.
Я многопоточно запускаю функцию (в 100-300 потоков). Скрипт запускается через Cron каждые 60 секунд. Каждому потоку должен передаваться номер и удаляться из файла.

PHP
1
2
3
4
5
6
7
8
9
$lines = file('/home/romegafo/public_html/numbers.txt', FILE_IGNORE_NEW_LINES);
 
for ($i = 1; $i <= 100; $i++) {
  $Max = count($lines);
  if ($Max>0) {
    $Params["currN"] = $lines[$i];
    startTask('func', $Params);
  }
}
Учитывая, что скрипт запускается каждую минуту, нужен какой-то нересурсоёмкий способ удалять отработанные строчки из файла. Например, если удалять каждую строчку в цикле из массива, а по окончанию работы цикла открыть файл для записи, полностью очистить его и записать туда массив - не уверен, сколько это займёт времени (учитывая размер в 5-10 Мб). Хочется быть уверенным, что к моменту следующего запуска скрипта, текущая работа по записи в файл будет уже закончена.

Добавлено через 2 часа 25 минут
В общем сделаю так - разобью сриптом файл с номерами на много файлов по 100 номеров. Каждый отработанный буду удалять. И сделаю ещё 1, где будет храниться текущий номер. Если у кого-то есть лучший вариант - поделитесь, будет интересно знать.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.11.2014, 22:15
Ответы с готовыми решениями:

Записать в конец файла строчку, из начала файла стереть строчку
Как из начала файла удалить первую строчку и в конец файла записать другую строчку, чтобы...

Быстрый способ регистрации
Всем привет. Сразу хочу сказать, что программировать я не умею на php, язык немного читать могу, но...

Самый быстрый способ нахождения соответствия значению
Есть список слов, состоящий только из строчных английских букв и цифр. Кодировка ср1251. Вопрос:...

Самый "быстрый" способ удаления из массива повторяющиеся значения
Здравствуйте! В интернете есть много разных вариантов, но мне нужен тот, который будет выполнятся...

Запись на последнюю строчку файла
Здравствуйте , есть файл add.php , с таким кодом : $fp =...

1
paskalnikita
86 / 86 / 30
Регистрация: 12.08.2014
Сообщений: 1,070
02.11.2014, 22:45 2
Не используйте файл, используйте БД
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.11.2014, 22:45

Каждую строчку файла записать в переменную
Всем привет, хочу реализовать следующее: Надо из файла поочередно брать каждую строку и записывать...

Как сделать запись в предпоследнюю строчку файла ?
Как сделать запись в предпоследнюю строчку файла ??? $filename = '../sitemap.xml'; ...

Наиболее быстрый способ склеивания фрагментов файла
Имеется несколько фрагментов одного файла. Требуется собрать эти фрагменты в исходный файл. Размеры...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru