![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 3 Pomógł: 0 Dołączył: 16.02.2008 Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Nie jestem żadnym specem od php, potrzebuje napisać pewien skrypt i go napisałem ale wydaje mi się on bardzo nieoptymalny. Otóż problem wygląda tak: posiadam plik dane.txt z indeksami produktów, który ma następujący format: Kod 60 62 63 64 65 67 72 77 78 . . . I tak łącznie ok. 20 tysięcy linii. Potrzebuję coś z tym zrobić, ale że serwer nie pozwoli na wykonywanie skryptu przez wiele godzin, więc wpadłem na następujący pomysł. Co 5 minut uruchamiany jest ten skrypt (z crona) pobierający za każdym razem po 5 indeksów Oto moje wypociny:
Działa dokładnie tak jak tego oczekuję. O ile przy początkowych liniach wszystko jest OK, to np. przy końcowych liniach, przy każdym wywołaniu skryptu trzeba przeczytać wszystkie linie aby dojść do tej właściwej. Według mnie to mało optymalne. Próbowałem szukać informacji o tym jak lepiej można by to zrobić. Jedyne co znalazłem to wczytywanie całego pliku do tablicy, operacje na niej i zapisanie jej spowrotem do pliku. Ale to jest chyba jeszcze mniej optymalne (o ile odczyt zajmowałby tyle samo to w rozwiązaniu z tablicą dochodzi jeszcze zapis). Chodzi mi o to, żeby przy każdym wywołaniu skryptu, odczytywane były pierwsze 5 wierszy i od razu usuwane, jednak beż użycia tablicy do tego. Z góry dziękuję za wszelkie podpowiedzi, ewentualnie uwagi co zrobiłem źle w podanym skrypcie. Pozdrawiam |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 105 Pomógł: 0 Dołączył: 16.07.2006 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 3 Pomógł: 0 Dołączył: 16.02.2008 Ostrzeżenie: (0%) ![]() ![]() |
unset nie usunie przypadkiem kopii linii, która jest zapisana w zmiennej $linia?
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 2 291 Pomógł: 156 Dołączył: 23.09.2007 Skąd: ITALY-MILAN Ostrzeżenie: (10%) ![]() ![]() |
Angielskiego az tak dobrze nie znam ale co nieco rozumiem
Cytat unset() destroys the specified variables The behavior of unset() inside of a function can vary depending on what type of variable you are attempting to destroy. If a globalized variable is unset() inside of a function, only the local variable is destroyed. The variable in the calling environment will retain the same value as before unset() was called. PRZYKLAD Kod function destroy_foo() { global $foo; unset($foo); } $foo = 'bar'; destroy_foo(); echo $foo; WYNIK Cytat bar Chodzilo ci o to? -------------------- Zainteresowania: XML | PHP | MY(SQL)| C# for .NET | PYTHON
http://code.google.com/p/form-builider/ Moj blog |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 28.06.2025 - 23:14 |