Archiv verlassen und diese Seite im Standarddesign anzeigen : array_diff() ungeordnet
sehe ich das richtig, dass array_diff() den resultierenden array geordnet zurück gibt?
kann ich das irgendwie verhindern/umgehen?
Was genau meinst du mit geordnet?
Steht auch nix von in der Funktionsbeschreibung.
Xothous
ich weiss, dass nix steht, ist aber trotzdem so.
der resultierende array ist danach alphabetisch geordnet, wie wenn ich n asort() drauf gemacht hätt.
Ich glaub ich hab da ne Lösung für dich:
shuffle bringt ein Array in »Unordnung«. Die Funktion ordnet die
Elemente mit Hilfe des Zufallsgenerators neu.
$numbers = range(1,20);
srand(time());
shuffle($numbers);
while (list(,$number) = each($numbers)) {
echo "$number ";
}
Must dir halt anschauen wie es genau geht.
Xothous
ich will die ned einfach gemischelt, ich will die genau in der reihenfolge, wie sie zuvor waren.
aber danke fürs helfen-wollen :]
nur mal so .. warum sollen die array elemente denn ungeordnet sein ???
das macht imho keinen sinn ..
aber du wirst es sicher noch erklären .. :-D
ok, werde ich =)
ich hab im zu sendenden formular 2 select multiple. so:
http://www.cyberhost.ch/~jugi/test/select.gif
wenn ich nun im linken was auswähle und dann ´hinzufügen´ mach, soll das beim rechten unten angefügt werden und im linken gelöscht werden. soweit kein problem.
das mit dem löschen hab ich da eben per array_diff() gelöst (also array_diff($vorhandene, $ausgewählte) ).
wenn man nun das ganze von rechts nach links macht (also ´entfernen´), dann ist das rechte danach sortiert anstatt dass die momentane reihenfolge beibehalten wird und nur die ausgewählten elemente entfernt werden.
vBulletin® v3.8.6, Copyright ©2000-2012, Jelsoft Enterprises Ltd.