Heim >Backend-Entwicklung >PHP-Tutorial >Wie sortiere ich ein mehrdimensionales PHP-Array nach einem inneren Array-Feld?

Wie sortiere ich ein mehrdimensionales PHP-Array nach einem inneren Array-Feld?

Barbara Streisand
Barbara StreisandOriginal
2024-12-01 16:51:13113Durchsuche

How to Sort a Multidimensional PHP Array by an Inner Array Field?

Sortieren eines mehrdimensionalen Arrays nach einem inneren Array-Feld in PHP

In PHP können Sie mehrdimensionale Arrays manipulieren, um Daten basierend auf bestimmten Kriterien zu organisieren . Stellen Sie sich ein Array vor, das eine Datenbanktabelle darstellt, in der jedes Element eine Zeile ist und ein inneres Array von Feldnamen und -werten enthält.

Um dieses Array nach dem Feld „Preis“ der inneren Arrays zu sortieren, führen Sie die folgenden Schritte aus :

  1. Extrahieren Sie die „Preis“-Werte: Verwenden Sie die Funktion array_column, um das Feld „Preis“ zu extrahieren und in einem zu speichern separates Array:

    $prices = array_column($yourArray, "price");
  2. Sortieren Sie das „Preis“-Array:Verwenden Sie die Funktion sort() (mit PHP 7 oder früher) oder die Funktion sort() (mit PHP 8 und höher), um das Array „Preis“ in aufsteigender Reihenfolge zu sortieren:

    sort($prices); // For PHP 7 or earlier
    // OR
    $prices = sort($prices); // For PHP 8 and later
  3. Ordnen Sie das neu an Äußeres Array: Verwenden Sie die Funktion array_multisort(), um das äußere Array basierend auf dem sortierten „Preis“-Array neu zu ordnen. Es benötigt ein Spaltenarray (Preise), ein Bestellarray (SORT_ASC) und das zu sortierende Array (IhrArray):

    // For PHP 7 or earlier:
    array_multisort($prices, SORT_ASC, $yourArray);
    
    // For PHP 8 and later. No need for `$col` variable:
    array_multisort(array_column($yourArray, "price"), SORT_ASC, $yourArray);

Indem Sie diese Schritte befolgen, können Sie effizient sortieren ein mehrdimensionales Array, das auf einem inneren Array-Feld in PHP basiert und es Ihnen ermöglicht, Daten in einer gewünschten Reihenfolge zu organisieren.

Das obige ist der detaillierte Inhalt vonWie sortiere ich ein mehrdimensionales PHP-Array nach einem inneren Array-Feld?. 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