Удалить несколько строк из файла

Zormax

Guest
Удалить несколько строк из файла

Есть код:

------------------------
$total_message = 100;
$nfile = @file("db/$name_file.txt");
$counter = count($nfile);
if ($counter >= $total_message) {
$id = 1;
$id--;
$fo=fopen("db/$name_file.txt","w");
flock($fo,2);
for($i=0;$i<sizeof($nfile);$i++) {
if($i==$id) {
unset($nfile[$i]);
}
}
fputs($fo,implode("",$nfile));
flock($fo,3);
fclose($fo);
}
------------------------
$id = 1; - Это номер строки для удаления
В данном коде при превышении кол-ва строк (100) файл "подрезаем" до ста строк,
т.е. удаляем ОДНУ строку.
Но мне надо чтобы можно было произвольное кол-во строк удалить, например 25, а не одну как выше в коде...

Как это реализовать?
 

Найч

Алгоритмик :-)
SiMM
ты прав, о пределах я не подумал

-~{}~ 15.01.05 11:20:

и прикинул я размер тогоа файла, где номер строки вылезет за пределы инта...
 

Demiurg

Guest
Только лочить надо файл до того, как читаешь.
 
Сверху