![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 74 Pomógł: 0 Dołączył: 30.08.2007 Ostrzeżenie: (0%) ![]() ![]() |
Witam!
Próbuję napisać skrypt do usuwania z pliku wielu linii na raz. Przerobiłem skrypt do usuwania jednej linii, ale strasznie obciąża serwer i czasami wyskakuje błąd o wykorzystaniu limitu czasu. Czy da się to wykonać szybciej, tak aby nie wyskakiwał błąd? Oto mój skrypt (usuwa 269 linii od góry licząc): Cytat <?PHP
$start = 0; $koniec = 269; do { $toDelete = 0; $lines = file('strona.html'); unset($lines[$toDelete]); file_put_contents('strona.html', $lines); $start ++; } while ($start != $koniec); ?> |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 74 Pomógł: 0 Dołączył: 30.08.2007 Ostrzeżenie: (0%) ![]() ![]() |
Dzięki, teraz operację wykonuje błyskawicznie :-).
Jeszcze jeden problemik, jak zostawić kilka linii bez naruszenia? Tzn. chciałbym jeszcze usunąć linie z końca pliku, tak aby zostały te które mnie interesują. Wcześniej skrypt wyglądał tak (pozostawiał 16 linii), ale działał tylko przy małej ilości linii: Cytat <?PHP
$start = 0; $koniec = 269; $koniec2 = 268; do { $toDelete = 0; $lines = file('strona.html'); unset($lines[$toDelete]); file_put_contents('strona.html', $lines); $start ++; } while ($start != $koniec); do { $toDelete = 16; $lines = file('strona.html'); unset($lines[$toDelete]); file_put_contents('strona.html', $lines); $start ++; } while ($start != $koniec2); ?> Ten post edytował Tomek58 29.07.2008, 20:26:20 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 3.10.2025 - 18:14 |