![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 168 Pomógł: 0 Dołączył: 15.01.2004 Skąd: Suwalki/Poznan Ostrzeżenie: (10%) ![]() ![]() |
Witam!!!
Problem wyglada nastepujaco Mam plik tak wygladajacy ... data | data1 | nazwa | telefon data | data1 | nazwa | telefon ... I teraz chce zrobic cos takiego pobrac informacje z pliku w ten sposob: dzisiaj jest jakis dzien wiec pobieram tresc z przedzialu "data" i "data1". i ja wyswietlam jesli znajdzie taki przedzial czyli np dzis jest 30.07.2004 a w pliku mam cos takiego ... 20.03.2004 | 29.07.2004 | aaa | 12345 30.07.2004 | 29.11.2004 | ccc | 1234 ... czyli porownuje daty wiec powinno mi wyswietlic informacje "ccc" i "1234" tylko nie wiem jak to zrobic? czy ktos moze mi w tym pomoc? dzieki bardzo |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 521 Pomógł: 0 Dołączył: 3.11.2003 Skąd: 3city Ostrzeżenie: (0%) ![]() ![]() |
Wczytywać dane z pliku linia po linii (chyba fgets), rozbić stringa (explode), zamienić na timestamp i potem tylko porównywanie intów. Nie jest to zbyt optymalne wydajnościowo ale działa.
Optymalizacja 1: rozważ umieszczanie w pliku timestampów zamiast dat. Chyba że same daty są ci potrzebne do czegoś innego. To może trzymać jedno i drugie? Optymalizacja 2: gdyby wszystkie linie w pliku były tej samej długości, mógłbyś zastosować szukanie binarne/interpolacyjne. Zwłaszcza jeżeli przedziały są mniej więcej równomiernie rozłożone. Wszystko zależy od wielkości pliku. Dla kilkudziesięciu linii pewnie nie warto się męczyć. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 11.10.2025 - 12:16 |