Ok, vor allem bin ich mir nicht einmal sicher, ob der Titel stimmt, wenn ja, tut mir leid.php arrays sortierung enthaltener werte
Ich habe diese Schleife hier, die das Ergebnis einer MongoDB Abfrage ist:
foreach($cursor as $obj) {
$monster = $obj["type"];
$strenght = $obj["strenght"];
$obj["value"] = rand(5, 15);
}
jetzt habe ich rand
dort gesetzt, dass value
Änderungen für jede Iteration zu bedeuten. Jetzt möchte ich, dass dieses Array, wenn gedruckt wird, von diesem $obj["value"]
bestellt wird, und in der Lage sein, wenn aufsteigend oder absteigend auszuwählen.
ok, ich habe diese
versuchtforeach($cursor as $obj) {
$type = $obj["monster"];
$strenght = $obj["strenght"];
$obj["value"] = rand(5, 15);
$newarr[] = $obj;
}
usort($newarr, "cmp");
function cmp($a, $b)
{ return $b['value'] < $a['value']; }
foreach ($newarr as $obj)
{
echo $obj['value'] . $obj['type'] . "<br/>";
}
Wie ich erwartet hatte, die
$obj["value"] = rand(5, 15);
wird nicht bei jeder Iteration in der Tat verloren, die $ newarr diesen Wert enthält, die Problem ist, dass es sie überhaupt nicht sortiert. Die Artikel werden in derselben Reihenfolge gedruckt, in der sie in das Array eingelegt wurden. Irgendeine Hilfe?
Dank
Ich möchte darauf hinweisen, dass Sie "Stärke" falsch geschrieben haben. Zweimal. – Jack
Ich bin nicht native lol –