Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [wolontariat] - sortowanie danych z pliku
djdahu
post
Post #1





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 1.07.2015

Ostrzeżenie: (0%)
-----


Hej,
Na wstępnie zaznaczę, że przeglądałem forum to i wiele innych, szukałem info u wujka googla, ale nie znalazłem dokładnie tego co potrzebuję, a jedynie zlepek informacji, których z którymi nie mogę sobie poradzić i poskładać w działającą całość
Otóż, mam problem z posortowaniem danych, które odczytuje z pliku tekstowego.

Dane w pliku txt mają format:

||ap1||restart||2||14||lokalizacja-rf3||
||ap2||restart||0||14||lokalizacja-rf34||
||ap4||awaria||4||14||lokalizacja-rf19||
||ap4||start||1||14||lokalizacja-rf23||
||ap1||restart||5||14||lokalizacja-rf3||
||ap4||start||4||14||lokalizacja-rf23||

gdzie:
kolumna 1 to nr urządzenia
kolumna 2 to akcja urządzenia
kolumna 3 to nr dnia tygodnia (0-6 / 0- niedz., 1-pon., itd.) wystąpienia akcji
kolumna 4 to godzina wystąpienia akcji (1-24)
kolumna 5 to lokalizacja


Dane do tej pory odczytywałem tak (w skrócie):

  1.  
  2. $file_pod = "data/log.txt";
  3. $file_p = file($file_pod);
  4. $file_p = array_reverse($file_p);
  5. $total_p = count($file_p);
  6. for($i=0; $total_p > $i; $i++){
  7. $line_p = explode("||", $file_p[$i]);
  8. echo $line_p[1].' - '.$line_p[2].' - '.$line_p[3].' - '.$line_p[4].' - '.$line_p[5].'<br>';
  9. }
  10.  




Niestety danych zrobiło się sporo i potrzebuję filtrowania oraz sortowania.
Chcę by wynikiem działania były rekordy (wyświetlone w ten sam sposó(IMG:style_emoticons/default/cool.gif) tylko z danego wybranego dnia (zmienna),
posortowane godzinami od najwcześniejszych do najstarszych.

Będę wdzięczny jeśli ktoś rozbudowałby ten kod tak, by spełniał te dwa założenia.

Z góry dziękuję za pomoc.



Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
djdahu
post
Post #2





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 1.07.2015

Ostrzeżenie: (0%)
-----


Jestem w pracy (raczej do późnych godzin nocnych) i nie mam teraz przy sobie prywatnego komputera wiec nie mam jak pokazać moich wczorajszych "wypocin".
Akurat z array_filter nie miałem aż takiego problemu, bo względnie filtrowało to tak jak oczekiwałem, ale za to mam spory problem z posortowaniem już odfiltrowanych danych.
..tzn tak, jak pisałem wcześniej próbowałem użyć różnych funkcji z rodziny sort() ..ale, albo sortowało nie tak jak trzeba, albo nie sortowało całości względem danej kolumny, a tylko samą pojedynczą kolumnę, albo w ogóle nie sortowało..

Wiem, że dla kogoś kto w tym siedzi zapewne jest to banalne, ale to tak trochę jak ja bym wyskoczył z pytaniem "ile możesz się męczyć z kalibracją intermodulatora kluczującego w swoim AP?" ..gdzie zapewne zdecydowana większość ludzi z forum nie miała by nawet pojęcia o czym mowa (IMG:style_emoticons/default/biggrin.gif) Zabawę z PHP dopiero co zacząłem i stawiam pierwsze kroki, ale w tym wypadku nie mam nawet zbytnio możliwości na uczenie się od podstaw pisania tego skryptu, bo przez jego brak nie mam nawet czasu na uczenie się.

Jeśli masz czas, to może chociaż postaraj się naprowadzić mnie na to krok po kroku, jak powinienem się do tego zabrać.

Z góry dzięki wielkie (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 27.12.2025 - 13:25