Andreas: höchstes Datum in Array ermitteln

Hallo!

Ja, hört sich leicht an, ich habs auch geschafft, aber ich wollte mal aus wissbegierde fragen ob das keiner einfacher hinbekommt als ich!

Ich habe aus Spaß eine Statistik-Script geschrieben, welches alle möglichen Daten zu einem Thread hier im Selfforum ausliest.

Vorab: Das soll kein Ansporn sein irgendwie einen Thread künstlich am Leben zu erhalten oder ähnliches!

http://www.knet-systems.de/temp/forum.php

ich speicher die Erstellungsdaten in folgendem Format in dem Arrray $daten:

02. 08. 2002, 22:17

Dann wandele ich in einer schleife jedes Datum in einen Timestamp um und gucke jedesmal, ob dieser höher als der bis jetzt höchste ist:

foreach($daten as $tmp_datum) {
    preg_match ("/([0-9]{2}). ([0-9]{2}). ([0-9]{4}), ([0-9]{2}):([0-9]{2})/",$tmp_datum,$datums_array);
 $minute = $datums_array[5];
 $stunde = $datums_array[4];
 $tag = $datums_array[1];
 $monat = $datums_array[2];
 $jahr = $datums_array[3];

$tmp_timestamp = mktime ( $stunde, $minute, 0, $monat, $tag, $jahr);
 if ($tmp_timestamp > $max_timestamp){
     $max_timestamp = $tmp_timestamp;}
}
unset($tmp_timestamp);
unset($tmp_datum);
unset($datums_array);

$min_timestamp = $max_timestamp;

foreach($daten as $tmp_datum) {
    preg_match ("/([0-9]{2}). ([0-9]{2}). ([0-9]{4}), ([0-9]{2}):([0-9]{2})/",$tmp_datum,$datums_array);
 $minute = $datums_array[5];
 $stunde = $datums_array[4];
 $tag = $datums_array[1];
 $monat = $datums_array[2];
 $jahr = $datums_array[3];

$tmp_timestamp = mktime ( $stunde, $minute, 0, $monat, $tag, $jahr);
 if ($tmp_timestamp < $min_timestamp){
     $min_timestamp = $tmp_timestamp;}
}

Aber kann es sein das das wirklich nicht einfacher geht?

Viele Grüße
Andreas

PS: mein erster Versuch war einfach $daten[0]für start und $daten[count($daten)-1] für ende, aber das geht so nicht, zumindest nicht für das Höchstdatum, da die Postings ja nicht in chronologischer Reihenfolge stehen

  1. Hallo!

    Und direkt noch eine Frage zur Datumsberechnung(die mir vorherigem Thema zu tun hat):

    Warum steht da 1 Tag und 1 Stunde: http://www.knet-systems.de/temp/forum.php?t=19084

    In diesem Moment ist der Thread erst ein paar Minuten alt!

    Ich berechne die Werte wie folgt(wie ich an $min_timestamp komme stand ja im vorherigen Posting):

    $sekunden = time() - $min_timestamp;
    echo date("j",$sekunden)." Tage, ";
    echo date("G",$sekunden)." Stunden";

    Wieso steht da jeweils 1 ???

    Das dürfte doch nicht sein!

    Grüße
    Andreas