Hallo,
ich verzweifle gerade an einem Multi Array bzw. an dessen Auswertung.
Vorweg, was möchte ich überhaupt erreichen. Ich versuche mich an einer Erinnerungsfunktion für Termine auf einer Homepage. Aus einer Liste mit mehreren Terminen sollen die nächsten (1 bis 2) Termine angezeigt werden.
Die Daten werden zunächst unsortiert aus einer Datei ausgelesen und zum Beispiel das Datum als $e01 (Format Ymd) bereitgestellt. Der zugehörige Name der Veranstaltung als z.B. $e01t. Mit diesen Variablen wird ein MultiArray erstellt, indem ich auch mal als Vergleichswert das aktuelle Datum als Wertesatz mit einfließen lasse. Diese Werteliste wird dann nach Datum sortiert. Soweit klappt das auch, aber dann komm ich nicht mehr weiter.
Nun habe ich mir gedacht, sollte einfach der interne Zeiger auf den Datensatz mit dem aktuellem Datum springen (dafür habe ich ja den Wertesatz mit $currentDate = date("Ymd"); eingefügt). Mit next der folgende Datensatz ermittelt und ausgegeben und evtl. nochmal mit next der zweite folgende Datensatz.
Habe schon mehrere Skripte zum Suchen bzw. Pointer setzen ohne Erfolg ausprobiert, die meisten Befehle für zweidimensionale Arrays ausgelegt sind.
Beispiel vom bestehenden/funktionierendem Teil:
Bin ich mit meiner grundsätzlichen Überlegung überhaupt auf dem richtigen Weg?
Kann mir bitte jemand weiterhelfen, wie spreche ich nun die Werte an?
Gruß Karl
PS: Bin in PHP eher ein Beginner
ich verzweifle gerade an einem Multi Array bzw. an dessen Auswertung.
Vorweg, was möchte ich überhaupt erreichen. Ich versuche mich an einer Erinnerungsfunktion für Termine auf einer Homepage. Aus einer Liste mit mehreren Terminen sollen die nächsten (1 bis 2) Termine angezeigt werden.
Die Daten werden zunächst unsortiert aus einer Datei ausgelesen und zum Beispiel das Datum als $e01 (Format Ymd) bereitgestellt. Der zugehörige Name der Veranstaltung als z.B. $e01t. Mit diesen Variablen wird ein MultiArray erstellt, indem ich auch mal als Vergleichswert das aktuelle Datum als Wertesatz mit einfließen lasse. Diese Werteliste wird dann nach Datum sortiert. Soweit klappt das auch, aber dann komm ich nicht mehr weiter.
Nun habe ich mir gedacht, sollte einfach der interne Zeiger auf den Datensatz mit dem aktuellem Datum springen (dafür habe ich ja den Wertesatz mit $currentDate = date("Ymd"); eingefügt). Mit next der folgende Datensatz ermittelt und ausgegeben und evtl. nochmal mit next der zweite folgende Datensatz.
Habe schon mehrere Skripte zum Suchen bzw. Pointer setzen ohne Erfolg ausprobiert, die meisten Befehle für zweidimensionale Arrays ausgelegt sind.
Beispiel vom bestehenden/funktionierendem Teil:
PHP:
$data[] = array('Event_Date' => $e01, 'Event_Name' => $e01t, 'Event_Pre' => "A");
$data[] = array('Event_Date' => $e02, 'Event_Name' => $e02t, 'Event_Pre' => "B");
$data[] = array('Event_Date' => $e03, 'Event_Name' => $e03t, 'Event_Pre' => "B");
$data[] = array('Event_Date' => $currentDate, 'Event_Name' => "AktuellesDatumFuerVergleich", 'Event_Pre' => "1");
foreach ($data as $key => $row) {
$Event_Date[$key] = $row['Event_Date'];
$Event_Name[$key] = $row['Event_Name'];
}
array_multisort($Event_Date, SORT_ASC, $Event_Name, SORT_ASC, $data);
Bin ich mit meiner grundsätzlichen Überlegung überhaupt auf dem richtigen Weg?
Kann mir bitte jemand weiterhelfen, wie spreche ich nun die Werte an?
Gruß Karl
PS: Bin in PHP eher ein Beginner