![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 15 Pomógł: 0 Dołączył: 16.11.2007 Ostrzeżenie: (0%) ![]() ![]() |
Witam, potrzebuje posortować określone dane w pliku,
plik wygląda tak: data tamat tresc jak widać poniżej rozbijam ten plik na 3 elementy , dzieląc je wg spacji na $rek[0] to jest data, $rek[1] to jest temat i $rek[2] to jest tresc, jak teraz zrobić sortowanie tylko wg daty w tym pliku czyli sortowanie po $rek[0] zeby sortowało np w odwrotnej kolejności?? data jest w formacie [31/gru/2007:01:02:59] Kod <?
$f=fopen("plik.txt","r"); while ($logi=fgets($f,1000)) { $logi=chop($logi); $rek=explode(" ",$logi); echo "<tr>"; echo "<td width=190>$rek[0] $rek[1]<td>$rek[2]"; } fclose($f); echo "</td>"; echo "</tr>"; ?> |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 611 Pomógł: 19 Dołączył: 28.02.2005 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
wsio do tablicy a pozniej array_multisort" title="Zobacz w manualu PHP" target="_manual chyba że ten plik bardzo duży to pozostają zaawansowane metody sortowania tak żeby pamięci nie zabić, a tak szczerze to może lepiej od razy trzymac kilka kopii plików posortowane według kolejności i pozniej przy dodawaniu wstawiać w odopoiwednie miejsce
![]() -------------------- |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 15 Pomógł: 0 Dołączył: 16.11.2007 Ostrzeżenie: (0%) ![]() ![]() |
prosiłbym o jakiś kod
![]() |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 813 Pomógł: 34 Dołączył: 18.03.2007 Skąd: o stamtąd Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 15 Pomógł: 0 Dołączył: 16.11.2007 Ostrzeżenie: (0%) ![]() ![]() |
zgadza sie plik jest duży, sa to logi systemowe, i nie moge sobie zrobić kilku kopii, bo do tego pliku ciągle dopisywane są zdarzenia
a co do funkcji array_multisort, zrobiłem coś takiego, niby jest ok, bo nie wyrzuca błędu a jednak nic to nie dało Kod <span class="postcolor"><?
$f=fopen("plik.txt","r"); while ($logi=fgets($f,1000)) { $logi=chop($logi); $rek=explode(" ",$logi); $tbl= array( array ($rek[0]), array ($rek[3])); array_multisort($tbl[0],SORT_ASC); echo "<tr>"; echo "<td width=190>$rek[0] $rek[1]<td>$rek[2]"; } fclose($f); echo "</td>"; echo "</tr>"; ?></span> |
|
|
![]() ![]() |
![]() |
Aktualny czas: 20.08.2025 - 01:09 |