So verwenden Sie die Funktion array_multisort in PHP, um ein Array nach angegebenen Feldern zu sortieren

醉折花枝作酒筹
Freigeben: 2023-03-10 21:56:01
nach vorne
3069 Leute haben es durchsucht

Es gibt einige Funktionen in PHP, die zum Sortieren von Arrays verwendet werden können. Aber wie kann man ein Array mit mehreren Feldern nach bestimmten Feldern sortieren? Mit der Funktion array_multisort kann man nach bestimmten Feldern sortieren.

So verwenden Sie die Funktion array_multisort in PHP, um ein Array nach angegebenen Feldern zu sortieren

Es gibt einige Funktionen in PHP, die zum Sortieren von Arrays verwendet werden können.

  • sort() – Sortieren Sie das Array in aufsteigender Reihenfolge.

  • rsort() – Sortieren Sie das Array in absteigender Reihenfolge.

  • asort() – Sortieren Sie das Array in aufsteigender Reihenfolge basierend auf dem Wert des assoziativen Arrays

  • ksort() – Sortiert das Array in aufsteigender Reihenfolge basierend auf den Schlüsseln des assoziativen Arrays

  • arsort() – Sortiert das Array in absteigender Reihenfolge basierend auf den Werten des assoziativen Arrays

  • krsort() – Sortiert das Array in absteigender Reihenfolge basierend auf den Schlüsseln des assoziativen Arrays. In absteigender Reihenfolge anordnen

Zum Beispiel:

        $arr=['green','car','apple','book'];
        sort($arr);
        var_dump($arr);
Nach dem Login kopieren

Sie können das Sortierergebnis erhalten:

array (size=4)
  0 => string 'apple' (length=5)
  1 => string 'book' (length=4)
  2 => string 'car' (length=3)
  3 => string 'green' (length=5)
Nach dem Login kopieren

Aber für ein Array mit mehreren Feldern: Wie sortieren Sie es nach dem angegebenen Feld? Zum Beispiel das folgende Array:

        $arr=[
            [
                'age'=>50,
                'name'=>'张三'
            ],
            [
                'age'=>18,
                'name'=>'李四'
            ],
            [
                'age'=>27,
                'name'=>'王五'
            ]
        ];
Nach dem Login kopieren

Wie sortieren wir nach Alter? Oder wie wäre es mit der Sortierung nach Namen?

 array_multisort(array_column($arr,'age'),SORT_ASC,$arr);
var_dump($arr);
Nach dem Login kopieren

Drucken Sie die Ergebnisse aus

array (size=3)
  0 => 
    array (size=2)
      'age' => int 18
      'name' => string '李四' (length=6)
  1 => 
    array (size=2)
      'age' => int 27
      'name' => string '王五' (length=6)
  2 => 
    array (size=2)
      'age' => int 50
      'name' => string '张三' (length=6)
Nach dem Login kopieren

Auf diese Weise wird sortiert, das heißt, wenn Sie die Funktion array_multisort zum Sortieren verwenden, sortieren Sie das Array mit array_column, extrahieren Sie die angegebene Spalte in den ersten Parameter und fügen Sie die Sortierkonstante ein Geben Sie den zweiten Parameter ein und fügen Sie das Array ein. Mit dem dritten Parameter können Sie nach dem angegebenen Feld sortieren. SORT_ASC ist aufsteigend, SORT_DESC absteigend.

Empfohlenes Lernen: php-Video-Tutorial

Das obige ist der detaillierte Inhalt vonSo verwenden Sie die Funktion array_multisort in PHP, um ein Array nach angegebenen Feldern zu sortieren. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
php
Quelle:segmentfault.com
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage