suchen
HeimBackend-EntwicklungPHP-TutorialWie kann ich mit „array_multisort' ein mehrdimensionales Array in PHP nach mehreren Spalten sortieren?

How can I sort a multidimensional array in PHP by multiple columns using `array_multisort`?

Mehrdimensionale Arrays nach mehreren Spalten sortieren

Das Sortieren eines mehrdimensionalen Arrays kann eine anspruchsvolle Aufgabe sein, insbesondere wenn mehrere Kriterien berücksichtigt werden. Glücklicherweise bietet PHP mit der Funktion array_multisort eine elegante Lösung.

Um ein mehrdimensionales Array zu sortieren, müssen wir die erforderlichen Spalten extrahieren und an array_multisort übergeben. Jede Spalte wird unabhängig sortiert, wobei die Sortierreihenfolge als SORT_ASC oder SORT_DESC angegeben wird.

Zum Beispiel das folgende Eingabearray:

$array = [
    ['ID' => 1, 'title' => 'Boring Meeting',  'date_start' => '2010-07-30', 'event_type' => 'meeting', 'state' => 'new-york'],
    ['ID' => 2, 'title' => 'Find My Stapler', 'date_start' => '2010-07-22', 'event_type' => 'meeting', 'state' => 'new-york'],
    ['ID' => 3, 'title' => 'Mario Party',     'date_start' => '2010-07-22', 'event_type' => 'party',   'state' => 'new-york'],
    ['ID' => 4, 'title' => 'Duct Tape Party', 'date_start' => '2010-07-28', 'event_type' => 'party',   'state' => 'california']
];

Um nach Status zu sortieren, dann nach Ereignistyp und schließlich date_start würden wir den folgenden Code verwenden:

# extract columns
$state = array_column($array, 'state');
$event_type = array_column($array, 'event_type');
$date_start = array_column($array, 'date_start');

# sort by state desc, event_type asc, date_start asc
array_multisort($state, SORT_DESC, $event_type, SORT_ASC, $date_start, SORT_ASC, $array);

PHP 5.5.0 führt eine vereinfachte Syntax mit ein array_column:

array_multisort(
    array_column($array, 'state'), SORT_DESC,
    array_column($array, 'event_type'),      SORT_ASC,
    $array
);

Als Ergebnis sieht das sortierte Array wie folgt aus:

[
    ['ID' => 4, 'title' => 'Duct Tape Party', 'date_start' => '2010-07-28', 'event_type' => 'party',   'state' => 'california'],
    ['ID' => 3, 'title' => 'Mario Party',     'date_start' => '2010-07-22', 'event_type' => 'party',   'state' => 'new-york'],
    ['ID' => 2, 'title' => 'Find My Stapler', 'date_start' => '2010-07-22', 'event_type' => 'meeting', 'state' => 'new-york'],
    ['ID' => 1, 'title' => 'Boring Meeting',  'date_start' => '2010-07-30', 'event_type' => 'meeting', 'state' => 'new-york'],
];

Durch die Verwendung von array_multisort haben wir das mehrdimensionale Array effektiv auf der Grundlage mehrerer Spalten sortiert und so eine flexible und leistungsstarke Lösung bereitgestellt Lösung für die Organisation und den Abruf von Daten.

Das obige ist der detaillierte Inhalt vonWie kann ich mit „array_multisort' ein mehrdimensionales Array in PHP nach mehreren Spalten sortieren?. 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
Abhängigkeitsinjektion in PHP: Eine einfache ErklärungAbhängigkeitsinjektion in PHP: Eine einfache ErklärungMay 10, 2025 am 12:08 AM

Abhängigkeitsinjektion (DI) InphpenHancesCodeFlexibility und TestabilityByDecoubingClassesFromDhrexDependencies.1) UseconstructorinjectionTopassDependenciesViaconstructors, sicherstellen, dass die Schaffung von Schrägungen für die Schaffung von Schaffungen von Schriften, t

PHP DI -Containervergleich: Welches zu wählen?PHP DI -Containervergleich: Welches zu wählen?May 10, 2025 am 12:07 AM

Pimple wird für einfache Projekte empfohlen. Die Abhängigkeit von Symfony wird für komplexe Projekte empfohlen. 1) Pickel ist aufgrund seiner Einfachheit und Flexibilität für kleine Projekte geeignet. 2) Die Abhängigkeit von Symfony ist aufgrund seiner leistungsstarken Fähigkeiten für große Projekte geeignet. Bei der Auswahl müssen die Projektgröße, die Leistungsanforderungen und die Lernkurve berücksichtigt werden.

PHP -Abhängigkeitsinjektion: Was, warum und wie?PHP -Abhängigkeitsinjektion: Was, warum und wie?May 10, 2025 am 12:06 AM

Abhängigkeitsinjektion (DI) InphpisadelssignPatternRynWhereClassDependenciesArepassedToitRatherthancreatedIntärsal, EnhancingCodemodularity und Testability

Abhängigkeitsinjektion in PHP: Der ultimative LeitfadenAbhängigkeitsinjektion in PHP: Der ultimative LeitfadenMay 10, 2025 am 12:06 AM

Abhängigkeitsinjektion (DI) InphpenHancesCodemodularität, Testbarkeit und Maschinenbarkeit.1) ItallowSeSysysWappingOfComponents, Asseeninapaymentgatewitch.2) DicanBeemplementedManuellorviacontainer, withContainersaddingcomplexityButaidinglargerprojekte, its

Optimieren Sie den PHP -Code: Reduzierung des Speicherverbrauchs und AusführungszeitOptimieren Sie den PHP -Code: Reduzierung des Speicherverbrauchs und AusführungszeitMay 10, 2025 am 12:04 AM

TooptimizephpCodeForreducedMemoryUseAndExecutionTime, folgt der THESESTEPS: 1) UseferencesInsteadofCopyingLargedatastructUrErestoreducemoryConbumption.2) Hebelverbotsversorgungsverbund

PHP-E-Mail: Schritt-für-Schritt-SendungsanleitungPHP-E-Mail: Schritt-für-Schritt-SendungsanleitungMay 09, 2025 am 12:14 AM

PhpisusedForSensionsemailsDuetoitSintegrationWithServerMailServicesandexternalsMtpproviders, automatisieren SieNotifikationen undmarketingCampaigns.1) setupyourphpenvironmentwithawebebascriccriptionWithPhpithPhPhPhPhPhPHPHPHPSMAILFUCTORISTION.2) useabasiscriccription

So senden Sie E -Mails per PHP: Beispiele und CodeSo senden Sie E -Mails per PHP: Beispiele und CodeMay 09, 2025 am 12:13 AM

Der beste Weg, um E -Mails zu senden, besteht darin, die Phpmailer -Bibliothek zu verwenden. 1) Die Verwendung der Funktion mail () ist einfach, aber unzuverlässig, was dazu führen kann, dass E -Mails Spam eingeben oder nicht geliefert werden können. 2) Phpmailer bietet eine bessere Kontrolle und Zuverlässigkeit und unterstützt HTML -Mail-, Anhänge- und SMTP -Authentifizierung. 3) Stellen Sie sicher, dass die SMTP -Einstellungen korrekt konfiguriert sind und die Verschlüsselung (z. B. Starttls oder SSL/TLS) zur Verbesserung der Sicherheit verwendet wird. 4) Für große Mengen von E -Mails sollten Sie ein E -Mail -Warteschlangensystem verwenden, um die Leistung zu optimieren.

Erweiterte PHP -E -Mail: Benutzerdefinierte Header und FunktionenErweiterte PHP -E -Mail: Benutzerdefinierte Header und FunktionenMay 09, 2025 am 12:13 AM

CustomHeaDersandadvancedFeaturesinphpemailenHanceFunctionality und Relance.1) CustomHeadersAddMetAforTrackingandCategorization.2) htmlemailSallowFormattingAndInteractivity.3) AttemmentmentsCanbesentusings -artig -Phpmailer.4) SMTPAUTHENTICTIVEMPR

See all articles

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Nordhold: Fusionssystem, erklärt
3 Wochen vorBy尊渡假赌尊渡假赌尊渡假赌
Mandragora: Flüstern des Hexenbaum
3 Wochen vorBy尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

SAP NetWeaver Server-Adapter für Eclipse

SAP NetWeaver Server-Adapter für Eclipse

Integrieren Sie Eclipse mit dem SAP NetWeaver-Anwendungsserver.

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

EditPlus chinesische Crack-Version

EditPlus chinesische Crack-Version

Geringe Größe, Syntaxhervorhebung, unterstützt keine Code-Eingabeaufforderungsfunktion

MinGW – Minimalistisches GNU für Windows

MinGW – Minimalistisches GNU für Windows

Dieses Projekt wird derzeit auf osdn.net/projects/mingw migriert. Sie können uns dort weiterhin folgen. MinGW: Eine native Windows-Portierung der GNU Compiler Collection (GCC), frei verteilbare Importbibliotheken und Header-Dateien zum Erstellen nativer Windows-Anwendungen, einschließlich Erweiterungen der MSVC-Laufzeit zur Unterstützung der C99-Funktionalität. Die gesamte MinGW-Software kann auf 64-Bit-Windows-Plattformen ausgeführt werden.

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

Leistungsstarke integrierte PHP-Entwicklungsumgebung