Heim >Backend-Entwicklung >PHP-Tutorial >array_multisort()-Funktion in PHP: So sortieren Sie mehrere Arrays

array_multisort()-Funktion in PHP: So sortieren Sie mehrere Arrays

WBOY
WBOYOriginal
2023-11-03 09:33:201401Durchsuche

array_multisort()-Funktion in PHP: So sortieren Sie mehrere Arrays

Die array_multisort()-Funktion in PHP: Das Sortieren mehrerer Arrays erfordert spezifische Codebeispiele

In der PHP-Entwicklung ist es oft notwendig, mehrere Arrays zu sortieren, beispielsweise basierend auf mehreren Feldern wie Alter, Name usw. Sortieren. PHP bietet die Funktion array_multisort() zum Sortieren mehrerer Arrays. In diesem Artikel wird die Verwendung der Funktion array_multisort() vorgestellt und spezifische Codebeispiele bereitgestellt.

1. Einführung in die Funktion array_multisort()

Die Funktion array_multisort() wird zum Sortieren mehrerer Arrays verwendet. Diese Funktion kann mehrere Arrays gleichzeitig sortieren und auch die Sortiermethode angeben, einschließlich aufsteigender oder absteigender Reihenfolge. Die grundlegende Syntax lautet wie folgt:

bool array_multisort ( array &$array1 [, mixed $array1_sort_order = SORT_ASC [, mixed $array1_sort_flags = SORT_REGULAR [, mixed $... ]]] )

Unter diesen stellt $array1 das erste zu sortierende Array dar, und die nachfolgenden Parameter stellen andere zu sortierende Arrays dar. Die Parameter $array1_sort_order und $array1_sort_flags repräsentieren die Sortiermethode bzw. die Sortierflags. Spezifische Werte finden Sie im PHP-Handbuch. Die Funktion gibt einen booleschen Wert zurück.

2. Beispiel für die Funktion array_multisort()

Im Folgenden werden konkrete Beispiele verwendet, um die Verwendung der Funktion array_multisort() zu veranschaulichen. Angenommen, es gibt zwei Arrays wie folgt. Sie müssen nach dem Wert des ersten Arrays sortiert werden, und das zweite Array ändert sich entsprechend.

<?php
 
// 待排序数组
$array1 = array(4, 2, 3, 1);
$array2 = array('d', 'b', 'c', 'a');
 
// 对数组进行排序
array_multisort($array1, $array2);
 
print_r($array1);
print_r($array2);
 
?>

Der Codeausführungsprozess ist wie folgt:

  1. Definieren Sie zunächst zwei Arrays $array1 und $array2, die jeweils die zu sortierenden Arrays darstellen.
  2. Dann rufen Sie die Funktion array_multisort() auf, um das Array zu sortieren. Da nur zwei Arrays als Parameter übergeben werden, bedeutet dies, dass nur der Wert des ersten Arrays sortiert wird. Die Standardsortiermethode ist aufsteigend und das Sortierflag ist SORT_REGULAR.
  3. Abschließend wird der sortierte Array-Inhalt ausgegeben, in dem die Werte von $array1 in aufsteigender Reihenfolge angeordnet sind und die entsprechenden Werte in $array2 ebenfalls sortiert sind.

Die Laufergebnisse lauten wie folgt:

Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 )
Array ( [0] => a [1] => b [2] => c [3] => d )

Wie aus den Laufergebnissen ersichtlich ist, werden die beiden Arrays aufgrund der Verwendung der Funktion array_multisort() nach dem Wert von $array1 und dem Wert von sortiert Auch $array2 wird entsprechend sortiert.

3. Weitere Beispiele für die Funktion array_multisort()

Zusätzlich zu den oben genannten Grundbeispielen kann die Funktion array_multisort() auch weitere Sortieroperationen durchführen. Sie können beispielsweise die Sortierung auf absteigende Reihenfolge, die Sortierung nach mehreren Feldern usw. beschränken.

Einige spezifische Beispielcodes werden unten als Referenz bereitgestellt:

  1. In absteigender Reihenfolge anordnen
<?php
 
// 待排序数组
$array1 = array(4, 2, 3, 1);
$array2 = array('d', 'b', 'c', 'a');
 
// 对数组进行排序
array_multisort($array1, SORT_DESC, $array2);
 
print_r($array1);
print_r($array2);
 
?>

Der Codeausführungsprozess ähnelt dem obigen Beispiel, der einzige Unterschied besteht darin, dass der zweite Parameter die absteigende Reihenfolge angibt.

  1. Nach mehreren Feldern sortieren
<?php
 
// 待排序数组
$array1 = array('Tom', 'John', 'Mary', 'Bob');
$array2 = array(20, 30, 25, 35);
$array3 = array(170, 165, 180, 175);
 
// 对数组进行排序
array_multisort($array1, SORT_ASC, $array2, SORT_ASC, $array3, SORT_DESC);
 
print_r($array1);
print_r($array2);
print_r($array3);
 
?>

Der Codeausführungsprozess ist wie folgt:

  1. Definieren Sie drei Arrays $array1, $array2 und $array3, die jeweils Name, Alter und Größe darstellen.
  2. Rufen Sie die Funktion array_multisort() auf, um die drei Arrays zu sortieren. Sortieren Sie sie zuerst in aufsteigender Reihenfolge nach $array1, dann in aufsteigender Reihenfolge nach $array2 und schließlich in absteigender Reihenfolge nach $array3.
  3. Geben Sie den Inhalt der drei sortierten Arrays aus.

Die laufenden Ergebnisse lauten wie folgt:

Array ( [0] => Bob [1] => John [2] => Mary [3] => Tom )
Array ( [0] => 30 [1] => 20 [2] => 25 [3] => 35 )
Array ( [0] => 175 [1] => 170 [2] => 180 [3] => 165 )

Wie aus den laufenden Ergebnissen ersichtlich ist, ist die Sortierreihenfolge der drei Arrays aufgrund der Verwendung mehrerer Felder zum Sortieren: sortiert nach Namen in aufsteigender Reihenfolge, wenn die Namen gleich sind, nach Alter in aufsteigender Reihenfolge sortiert, wenn die Namen nach Größe in absteigender Reihenfolge nach gleichem Alter sortiert sind.

4. Zusammenfassung

Dieser Artikel stellt die Verwendung der Funktion array_multisort() in PHP vor und bietet spezifische Codebeispiele. Diese Funktion kann mehrere Arrays gleichzeitig sortieren und eine aufsteigende oder absteigende Reihenfolge angeben. Sie unterstützt auch mehrere Felder für Sortiervorgänge. In der PHP-Entwicklung ist die Funktion array_multisort() ein sehr nützliches Werkzeug, das die Entwicklungsarbeit erheblich vereinfachen und die Programmleistung verbessern kann.

Das obige ist der detaillierte Inhalt vonarray_multisort()-Funktion in PHP: So sortieren Sie mehrere Arrays. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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