Heim  >  Artikel  >  Backend-Entwicklung  >  PHP-Array-Sortierung usort uksort Sortierfunktion

PHP-Array-Sortierung usort uksort Sortierfunktion

高洛峰
高洛峰Original
2016-11-29 14:48:281910Durchsuche

Sortieren Sie das Array: Die Funktion usort() verwendet eine benutzerdefinierte Funktion, um das Array zu sortieren. Der Beispielcode lautet wie folgt:

function cmp($a, $b) //Benutzerdefiniert Rückruffunktion

{

if($a==$b) //Wenn die beiden Parameter gleich sind

{

return 0; // Return 0

}

return($a>$b)?-1:1 //Wenn der erste Parameter größer als der zweite Parameter ist, gebe 1 zurück, andernfalls -1

}

$ a = Array (3,2,5,6,1); // Definiere ein Array

usort ($ a, "cmp"); Verwenden Sie eine benutzerdefinierte Funktion, um das Array zu sortieren

foreach($a as $key=>$value) //Schleife zur Ausgabe der sortierten Schlüssel-Wert-Paare

{

echo "$key:$valuen";

}

Hinweis: Wenn die Vergleichsergebnisse zweier Elemente gleich sind, ist ihre Reihenfolge im sortierten Array undefiniert Benutzerdefinierte Funktionen behalten die ursprüngliche Reihenfolge dieser Elemente bei, aber aufgrund des in 4.1.0 eingeführten neuen Sortieralgorithmus wird das Ergebnis nicht so sein, da es dafür keine wirksame Lösung gibt Sortieren Sie die Array-Schlüssel uksort( array, sorttype), der Beispielcode lautet wie folgt:

function cmp($a, $b) //Benutzerdefinierte Rückruffunktion

{

if($a== $b) //Wenn die beiden Parameter gleich sind

{

return 0; //Return 0

}

return($a>$b )?-1:1; //Wenn der erste Parameter größer als der zweite Parameter ist, 1 zurückgeben, andernfalls -1

}

$ a=array(4=>"vier", 3 =>"drei",20 =>"zwanzig",10=>"zehn" //Definiere ein Array

uksort ( $a,"cmp"); //Verwenden Sie self. Definieren Sie eine Funktion zum Sortieren der Array-Schlüssel

foreach($a as $key=>$value) //Schleife zur Ausgabe der sortierten Schlüssel-Wert-Paare

{//

echo "$key:$valuen";

}

uksort()-Funktion verwendet eine benutzerdefinierte Vergleichsfunktion zum Sortieren das Array entsprechend dem Schlüsselnamen, behält die Indexbeziehung bei und gibt bei Erfolg true zurück, andernfalls false.

Wenn das zu sortierende Array nach einem ungewöhnlichen Kriterium sortiert werden muss, sollte diese Funktion verwendet werden Die benutzerdefinierte Funktion sollte zwei Parameter akzeptieren, die ein Schlüsselnamenspaar sind. Die Vergleichsfunktion muss eine Ganzzahl kleiner als Null, gleich Null bzw. größer als Null zurückgeben, wenn der erste Parameter kleiner als oder gleich ist. oder größer als der zweite Parameter.

Funktion sort() Sortiert die Werte des angegebenen Arrays in aufsteigender Reihenfolge

Hinweis: Diese Funktion weist der Einheit einen neuen Schlüsselnamen zu Das Array wird gelöscht. Bei Erfolg wird „true“ zurückgegeben, andernfalls wird „false“ zurückgegeben. ,"apple"); //Definiere ein Array

sort($fruits); Sortiere das Array

foreach($fruits as $key=>$val) //Schleife zur Ausgabe die Schlüssel-Wert-Paare nach dem Sortieren des Arrays

{

echo "$key =$valn" //Schlüssel-Wert-Paar ausgeben

}//

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn