Heim  >  Artikel  >  Backend-Entwicklung  >  php array_multisort Ausführliche Erklärung und Beispielcode zum Sortieren von Arrays

php array_multisort Ausführliche Erklärung und Beispielcode zum Sortieren von Arrays

高洛峰
高洛峰Original
2017-01-06 17:00:031368Durchsuche

Die Funktion array_multisort() in PHP kann verwendet werden, um mehrere Arrays gleichzeitig zu sortieren oder um mehrdimensionale Arrays nach einer bestimmten Dimension oder mehreren Dimensionen zu sortieren. In diesem Artikel erfahren Sie, wie Sie die Funktion array_multisort verwenden.

Die Funktion array_multisort() gibt ein sortiertes Array zurück. Sie können ein oder mehrere Arrays eingeben. Die Funktion sortiert zuerst das erste Array, dann die anderen Arrays, und wenn zwei oder mehr Werte gleich sind, sortiert sie das nächste Array.

Hinweis: String-Schlüsselnamen bleiben erhalten, numerische Schlüsselnamen werden jedoch neu indiziert, beginnend bei 0 und aufsteigend um 1.

Hinweis: Sie können die Sortierreihenfolge und die Sortiertypparameter nach jedem Array festlegen. Wenn nicht festgelegt, verwendet jeder Array-Parameter seinen Standardwert.

Syntax

array_multisort(array1,sorting order,sorting type,array2,array3...)

Parameterbeschreibung

php array_multisort 对数组进行排序详解及实例代码

Rückgabewert

Gibt TRUE bei Erfolg oder FALSE bei Fehler zurück.

Beschreibung

Die Funktion array_multisort() sortiert mehrere Arrays oder mehrdimensionale Arrays.

Das Array im Parameter wird als Tabellenspalte behandelt und nach Zeile sortiert – dies ähnelt der Funktionalität der ORDER BY-Klausel von SQL. Das erste Array ist das zu sortierende Hauptarray. Wenn die Zeilen (Werte) im Array identisch sind, werden sie entsprechend der Größe des entsprechenden Werts im nächsten Eingabearray usw. sortiert.

Der erste Parameter ist ein Array, und jeder nachfolgende Parameter kann ein Array oder eines der folgenden Sortierreihenfolge-Flags sein (das Sortierflag wird zum Ändern der Standardsortierreihenfolge verwendet):

SORT_ASC - Standardmäßig in aufsteigender Reihenfolge sortieren. (A-Z)
SORT_DESC – Sortierung in absteigender Reihenfolge. (Z-A)

Die Art der Sortierung kann dann angegeben werden:

SORT_REGULAR – Standard. Ordnen Sie jeden Artikel in regelmäßiger Reihenfolge an.
SORT_NUMERIC – Sortieren Sie jedes Element in numerischer Reihenfolge.
SORT_STRING – Sortieren Sie jedes Element in alphabetischer Reihenfolge.

Beispiel 1:

Mehrdimensionales Array sortieren

<?php
 $ar = array(
    array("10",11,100,100,"a"),
    array(1,2,"2",3,1)
   );
 array_multisort($ar[0], SORT_ASC,SORT_STRING,$ar[1],SORT_NUMERIC,SORT_DESC);
 var_dump($ar);
?>

In diesem Beispiel wird das erste Array nach dem Sortieren zu „10“, 100, 100, 11, „a“ (in aufsteigender Reihenfolge als Zeichenfolge behandelt). Das zweite Array enthält 1, 3, „2“, 2, 1 (in absteigender Reihenfolge als Zahlen behandelt).

Laufende Ergebnisse:

array(2) {
 [0]=> array(5) {
  [0]=> string(2) "10"
  [1]=> int(100)
  [2]=> int(100)
  [3]=> int(11)
  [4]=> string(1) "a"
 }
 [1]=> array(5) {
  [0]=> int(1)
  [1]=> int(3)
  [2]=> string(1) "2"
  [3]=> int(2)
  [4]=> int(1)
 }
}

Beispiel 2:

Groß-/Kleinschreibung nicht beachtete Sortierung

SORT_STRING und SORT_REGULAR unterscheiden zwischen Groß- und Kleinschreibung und Großbuchstaben werden vor Kleinbuchstaben sortiert.
Um eine Sortierung ohne Berücksichtigung der Groß- und Kleinschreibung durchzuführen, sortieren Sie nach Kleinbuchstabenkopien des ursprünglichen Arrays.

<?php
 $array=array(&#39;Alpha&#39;,&#39;atomic&#39;,&#39;Beta&#39;,&#39;bank&#39;);
 $array_lowercase=array_map(&#39;strtolower&#39;,$array);
 array_multisort($array_lowercase,SORT_ASC,SORT_STRING,$array);
 print_r($array);
?>

Laufergebnisse:

Array
(
  [0] => Alpha
  [1] => atomic
  [2] => bank
  [3] => Beta
)

Vielen Dank fürs Lesen, ich hoffe, es kann allen helfen , vielen Dank an alle Unterstützen Sie diese Seite!

Weitere ausführliche Erklärungen zu php array_multisort und Beispielcodes zum Sortieren von Arrays finden Sie auf der chinesischen PHP-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