Aloha!
Nein, vielleicht habe ich mich falsch ausgedrückt, oder du hast es falsch verstanden.
Sicher nicht. :)
Es exisiteren zB 3 Schlüssel-Wert Paare, aber er zeigt mir nur 2 Paare an, weil das eine Schlüssel-Wert Paar genau den selben Schlüsselnamen hat (= 20020720) Wenn ich jetzt $a <=> $b sortiere, wird nur einer der Schlüssel erkannt, und nicht beide, und das ist das Problem. Ich will aber, daß beide erkannt werden.
Wenn du sowas machst:
$termin['20020719']="Hash ausprobieren";
$termin['20020720']="Selfforum besuchen";
$termin['20020720']="Kartoffeln kaufen";
Na, was wird dann passieren? Die dritte Zeile greift auf den _gleichen_ Schlüssel zu wie die zweite Zeile, also wird die dritte Zeile den Inhalt des Termins am 20.7.2002 bestimmen, und nicht die zweite _und_ dritte Zeile gleichzeitig erscheinen.
Es kann immer nur _einen_ Schlüssel gleichen Namens geben. Wäre das nicht der Fall: Wie soll man dann einerseits bestehende Werte ändern können, und andererseite: Welcher Termin wäre denn gemeint, wenn ich mit echo $termin['20020720']; wissen will, was heute zu tun ist?
Das, was du willst, läßt sich mit mehreren eindimensionalen oder einem mehrdimensionalen Array lösen:
$termin[23]['aktion']="Selfforum besuchen";
$termin[23]['datum']="20020720";
$termin[24]['aktion']="Kartoffeln kaufen";
$termin[24]['datum']="20020720";
Wenn du dieses Array sortieren willst, nimm array_multisort(). Eventuell ist es dazu zwingend notwendig, den Index umzudrehen:
$termin['aktion'][23]...
$termin['datum'][23]...
Du kannst aber genauso mit zwei Arrays arbeiten, das macht absolut keinen Unterschied:
$datum[23]=...
$aktion[23]=...
- Sven Rautenberg