Function.usort
Aus PHP-Wiki
usort — Sortiert ein Array nach Werten mittels einer benutzerdefinierten Vergleichsfunktion.
Inhaltsverzeichnis |
Beschreibung
bool usort ( array &$array ,callback $cmp_function )
Diese Funktion sortiert ein Array nach seinen Werten mittels
einer benutzerdefinierten Vergleichsfunktion. Soll das Array nach
nicht trivialen Kriterien sortiert werden, sollten Sie diese
Funktion verwenden.
Hinweis:
Wenn zwei Elemente als gleich verglichen werden ist ihre Reihenfolge
im sortierten Array undefiniert.
Hinweis: Diese Funktion weist den
Elementen des Arrays array
neue Schlüssel zu.
Bestehende Schlüssel die Sie eventuell zugewiesen haben werden entfernt
statt einfach nur die Schlüssel neu anzuordnen
Parameter-Liste
- array
- Das zu sortierende Array.
- cmp_function
- Die Vergleichsfunktion muss einen Integerwert kleiner als, gleich oder größer als 0 zurückgeben je nachdem ob das erste übergebene Argument kleiner als, gleich oder größer als das zweite ist.
Rückgabewerte
Gibt bei Erfolg TRUE zurück, im Fehlerfall FALSE.
ChangeLog
Version
Beschreibung
4.1.0
Es wurde ein neuer Sotieralgorithmus eingeführt, die Reihenfolge
von Elementen die von cmp_function
als gleich bewertet wurden bleibt nun nicht mehr erhalten.
Beispiele
=== #1 usort() Beispiel
<?php function cmp($a, $b) { if ($a == $b) { return 0; } return ($a < $b) ?=== === währe die sort() Funktion offensichtlich die bessere Wahl. <br /> Beispiel #2 usort() Beispiel für multidimensionale Arrays <source lang="php"> <?php function cmp($a, $b) { return strcmp($a["frucht"], $b["frucht"]); } $fruechte[0]["frucht"] = "Zitronen"; $fruechte[1]["frucht"] = "Aepfel"; $fruechte[2]["frucht"] = "Orangen"; usort($fruechte, "cmp"); while (list($key, $value) = each($fruits)) { echo "\$fruechte[$key]: " . $value["frucht"] . "\n"; } ?>
When sorting a multi===
=== #3
usort() Beispiel das die Methode eines Objekts benutzt
<source lang="php">
<?php
class TestObj {
var $name;
function TestObj($name)
{
$this===
==Siehe auch==
* [[function.uasort|uasort()]]
* [[function.uksort|uksort()]]
* [[function.sort|sort()]]
* [[function.asort|asort()]]
* [[function.arsort|arsort()]]
* [[function.ksort|ksort()]]
* [[function.natsort|natsort()]]
* [[function.rsort|rsort()]]
[[Kategorie:PHP 4|U]]
[[Kategorie:PHP 5|U]]
[[Kategorie:Array Funktionen|U]]