Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> sortowanie elementu w pliku
Blace
post
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>";
  
   ?>
Go to the top of the page
+Quote Post
sticker
post
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 tongue.gif


--------------------
Go to the top of the page
+Quote Post
Blace
post
Post #3





Grupa: Zarejestrowani
Postów: 15
Pomógł: 0
Dołączył: 16.11.2007

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


prosiłbym o jakiś kod smile.gif
Go to the top of the page
+Quote Post
b_chmura
post
Post #4





Grupa: Zarejestrowani
Postów: 813
Pomógł: 34
Dołączył: 18.03.2007
Skąd: o stamtąd

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


Cytat(Blace @ 31.12.2007, 01:21:28 ) *
prosiłbym o jakiś kod smile.gif


a ja trochę własnej inicjatywy, sticker podsuną Ci pewne rozwiązanie i inne drogi rozwiązania problemu.
Wiec nie proś a do roboty sie weź!
Go to the top of the page
+Quote Post
Blace
post
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>
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 20.08.2025 - 01:09