|
|
|
| Допустим есть файл, размер его 100 Мб. Ресурсы сервера ограничены (в плане что считать файл целиком не желательно)
. Вопросик: как из файла стереть первые 10 строк?
Заранее спаибо! | |
|
|
|
|
|
|
|
для: realkasper
(10.10.2007 в 13:54)
| |
<?php
$fname = "file.txt"; /* Имя файла */
$rows = 10; /* Стереть строк */
$fold = fopen($fname, "r") or die("Файл '$fname' не найден");
$fnew = fopen("new_".$fname, "w") or die("Не могу создать 'new_$fname'");
$i = 0;
while (!feof($fold))
{
if ($i >= $rows) fwrite($fnew, fgets($fold));
$i++;
}
fclose($fold);
fclose($fnew);
?>
|
Но не проверял | |
|
|
|
|
|
|
|
для: bronenos
(10.10.2007 в 14:29)
| |
<php
$file = "file.txt";
$fo = fopen($file, "a+");
$file = explode(" ", $file);
for($i=0;$i < 10;$i++){
unset($file[$i]);
}
fwrite($fo,$file);
fclose($fo);
?>
| скрипт будет работать только в том случает если все строки у вас без пробелов и расположенны списком. Но я его не проверял | |
|
|
|
|
|
|
|
для: Klyuchnikov
(10.10.2007 в 15:39)
| |
$file = "file.txt";
...
$file = explode(" ", $file);
|
Что бы это значило? | |
|
|
|
|
|
|
|
для: bronenos
(10.10.2007 в 14:29)
| | Что то не удаляет совсем))
Как его считать по частям и удалить 10 строк? | |
|
|
|
|
|
|
|
для: realkasper
(10.10.2007 в 17:36)
| | Ни один из способов не помог((( | |
|
|
|
|
|
|
|
для: realkasper
(12.10.2007 в 10:32)
| |
<?php
$file=file("test.txt");
$fp=fopen("test.txt","w");
for($i=0;$i<10;$i++)
{
unset($file[$i]);
}
fputs($fp,implode("",$file));
fclose($fp);
?>
|
| |
|
|
|
|
|
|
|
для: Faraon
(12.10.2007 в 11:07)
| | "Допустим есть файл, размер его 100 Мб."
realkasper, самый первый пример (bronenos'a) пробовали? Вроде бы должен работать.. | |
|
|
|
|
|
|
|
для: kasmanaft
(12.10.2007 в 15:08)
| | добавлю - на папку должны стоять права хотя бы 777, чтоб создать новый файл | |
|
|
|
|
|
|
|
для: Faraon
(12.10.2007 в 11:07)
| | это ж как захламится память? | |
|
|
|