Ich suche nach einer prägnanten Art, dies in PHP zu tun:
bei einem Array, wenn ich ein key=>value
-Paar hinzufüge, sollte die Routine überprüfen, ob der Schlüssel bereits existiert.
Wenn es nicht existiert, fügen Sie es mit dem key=>value
-Paar zum Array hinzu.
Wenn dies der Fall ist, sollte der Wert an den Wert des Arrays angehängt werden. Also, zum Beispiel, wenn das erste Array dies ist
%Vor% Wenn ich ein 'a'=>'45'
-Paar zum Array hinzufüge, wird die Routine mich zurückgeben
Wenn ich ein weiteres 'a=>gt'
-Paar hinzufüge, wird die Routine mich zurückgeben
Gibt es eine prägnante Möglichkeit, dies zu tun? Natürlich kann ich es selbst schreiben, aber ich glaube, dass meine Lösung sehr hässlich ist.
Es gibt drei Situationen:
Also, im Code:
%Vor%Es ist nur der letzte Fall, der schwierig ist: Wenn es noch kein Array ist, müssen Sie einen mit dem aktuellen Wert plus dem neuen erstellen.
Ausschließlich Array:
%Vor%String mit Trennzeichen:
%Vor% Wenn Sie die Zeichenfolge als Array benötigen, tun Sie einfach $arr['a'] = explode("/",$arr['a']);
Beide Methoden sind hässlich ... Sie sollten versuchen, wie FlorianH vorgeschlagen hat, die ganze Variable als Array zu verwenden.
Eine andere Methode könnte sein, die Schnittstelle in PHp zu verwenden und etwas zu erstellen, das die Iterator- und ArrayAccess-Schnittstellen herstellt. ( Ссылка , Ссылка )