nach datum sortieren

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
Benutzeravatar
kolja
Mitglied
Beiträge: 1546
Registriert: 13.05.2005 16:39
Wohnort: münster

nach datum sortieren

Beitrag von kolja »

tach allerseits

hier gibt es oft ganz kurze antworten mit nem link auf selphp oder so
und weil ich es selbst nicht finde :oops:

aber darum geht es:

ich habe einen ordner voller ordner voller bilder:

Code: Alles auswählen

fotos/
fotos/album1
fotos/album1/foto1 bis fot030

fotos/album2
fotos/album2/foto1 bis fot030
nun möchte ich aus dem neusten album (der zuletzt erstellte ordner)
zwei zufällige bilder anzeigen

nur häge ich schon an der stelle wo php den neusten ordner auswählen soll..

ich habe ein array, welches so aussieht:

Code: Alles auswählen

Array ( [0] => NeuerOrdner [1] => test [2] => wert [3] => ralph [4] => Flyer )
nur wie bekomme ich da den neusten nach vorne ??

kolja

wie gesagt, hab schn mein dickes buch gewälzt
und auch schon gegeoogelt aber nicht einmal einen ansatzt gefunden...
Das Leben ist unberechenbar - deshalb ist Improvisation wichtiger als Planung!

Es ist besser zu geben, als zu leihen, und kostet ungefähr gleichviel.

.: Münsters Reggae Forum :.
Benutzeravatar
Miriam
Mitglied
Beiträge: 12310
Registriert: 13.10.2004 07:18
Kontaktdaten:

Beitrag von Miriam »

Weil wir gerade bei den Links sind ---> Kick
Gruss, Miriam.
Ich schmeiß' alles hin und...
... lasse es liegen
Benutzeravatar
kolja
Mitglied
Beiträge: 1546
Registriert: 13.05.2005 16:39
Wohnort: münster

Beitrag von kolja »

danke, aber warum ist das so umständlich ??

erst das datum auslesen, dannwieder zurück zum namen
und den dann erst ausgeben...

naja ich setzte mich mal drann

kolja
Das Leben ist unberechenbar - deshalb ist Improvisation wichtiger als Planung!

Es ist besser zu geben, als zu leihen, und kostet ungefähr gleichviel.

.: Münsters Reggae Forum :.
Benutzeravatar
Miriam
Mitglied
Beiträge: 12310
Registriert: 13.10.2004 07:18
Kontaktdaten:

Beitrag von Miriam »

Hm, der Neueste ist doch durch das Datum zum Neuesten geworden, nicht durch den Namen.
Gruss, Miriam.
Ich schmeiß' alles hin und...
... lasse es liegen
Benutzeravatar
kolja
Mitglied
Beiträge: 1546
Registriert: 13.05.2005 16:39
Wohnort: münster

Beitrag von kolja »

also entweder spinnt phpbb.de mein rechner oder das ganze internet...
das ist das dritte mal das ich versuche diesen beitrag zu schreiben :-?

aber BTT:

mein array habe ich um die timestampangaben ergänzt,
und sortiert!

nun sieht die ausgabe so aus:

Code: Alles auswählen

Array ( [4] => Array ( [1177284668] => Flyer ) [3] => Array ( [1177066156] => ralph ) [2] => Array ( [1176862058] => wert ) [1] => Array ( [1176860769] => test ) [0] => Array ( [1176860860] => NeuerOrdner ) )  
nur wie gebe ich jetzt den letzten wert (in diesem falle "Flyer") aus ??

kolja

edit ich bemerke gerade, dass meine ausgabe nicht so aussieht,
wie die die ich in den beispielen immer sehe...

aber soviel kann hier doch nicht falsch sein:

Code: Alles auswählen

for($i=0;$i<count($verzeichnisinhalt);$i++)
{ 
 $array[$i] = array( filemtime($verzeichnisinhalt[$i]) =>  $verzeichnisinhalt[$i]);
}
kolja
Das Leben ist unberechenbar - deshalb ist Improvisation wichtiger als Planung!

Es ist besser zu geben, als zu leihen, und kostet ungefähr gleichviel.

.: Münsters Reggae Forum :.
Benutzeravatar
Miriam
Mitglied
Beiträge: 12310
Registriert: 13.10.2004 07:18
Kontaktdaten:

Beitrag von Miriam »

Warum packst Du nicht alles in ein Array nach dem Muster

Code: Alles auswählen

$feld=array('dateiname1' => 'datum1', 'Dateiname2' => 'datum2');
dann sortierst Du das Array mit

Code: Alles auswählen

asort($feld);
und flippst es mit array_flip()
und schnappst Dir das letzte Element des Array $feld mit:

Code: Alles auswählen

$last =array_pop($feld);
da Du aber nun das Array anders herum aufgebaut hast, musst Du dann eben zweimal array_flip() benutzen.

Bsp.:

Code: Alles auswählen

<?php
$feld = Array ( '1177284668' => 'Flyer', '1177066156' => 'ralph', '1176862058' => 'wert', '1176860769' => 'test', '1176860860' => 'NeuerOrdner');
$feld = array_flip($feld);
asort($feld);
$feld = array_flip($feld);
$last = array_pop($feld);
print($last);
?>
Kannst es aber auch anders machen.
Gruss, Miriam.
Ich schmeiß' alles hin und...
... lasse es liegen
Benutzeravatar
Pyramide
Ehrenadmin
Beiträge: 12734
Registriert: 19.04.2001 02:00
Wohnort: Meschede

Beitrag von Pyramide »

Code: Alles auswählen

$newest_time = $newest_file = 0;
if ($dir = opendir('bilder'))
{
    while (($file = readdir($dir)) !== false)
    {
        if(filemtime($file) > $newest_time)
        {
            $newest_file = $file;
            $newest_time = filemtime($file);
        }
    }
    closedir($dh);
}
KB:knigge
Benutzeravatar
kolja
Mitglied
Beiträge: 1546
Registriert: 13.05.2005 16:39
Wohnort: münster

Beitrag von kolja »

Miriam hat geschrieben:Warum packst Du nicht alles in ein Array nach dem Muster

Code: Alles auswählen

$feld=array('dateiname1' => 'datum1', 'Dateiname2' => 'datum2');
weil ich leider nicht verstehe wie ich das machen soll...

ich muss doch irgendwie in der for-schleife bleiben, oder nicht ?

kolja
Das Leben ist unberechenbar - deshalb ist Improvisation wichtiger als Planung!

Es ist besser zu geben, als zu leihen, und kostet ungefähr gleichviel.

.: Münsters Reggae Forum :.
Benutzeravatar
Miriam
Mitglied
Beiträge: 12310
Registriert: 13.10.2004 07:18
Kontaktdaten:

Beitrag von Miriam »

Code: Alles auswählen

closedir($dh);
???

Und was ist mit den Verzeichnissen?
Gruss, Miriam.
Ich schmeiß' alles hin und...
... lasse es liegen
Benutzeravatar
kolja
Mitglied
Beiträge: 1546
Registriert: 13.05.2005 16:39
Wohnort: münster

Beitrag von kolja »

@ pyramide

ich glaub das ist was ich gesucht habe :-)

ist nur schade um miriams bemühungen :roll:

danke euch beiden

kolja
Das Leben ist unberechenbar - deshalb ist Improvisation wichtiger als Planung!

Es ist besser zu geben, als zu leihen, und kostet ungefähr gleichviel.

.: Münsters Reggae Forum :.
Antworten

Zurück zu „Coding & Technik“