Heim  >  Artikel  >  Backend-Entwicklung  >  Sortieren Sie das Array in PHP mithilfe einer eigenen Funktion nach Wert und behalten Sie dabei die Schlüsselnamen bei

Sortieren Sie das Array in PHP mithilfe einer eigenen Funktion nach Wert und behalten Sie dabei die Schlüsselnamen bei

PHPz
PHPzOriginal
2024-05-05 08:36:02954Durchsuche

In PHP besteht die Möglichkeit, ein Array nach Wert zu sortieren und die Schlüsselnamen mithilfe einer eigenen Funktion beizubehalten, darin, alle Werte des Arrays abzurufen und zu sortieren. Holen Sie sich den Schlüssel des sortierten Werts. Kombinieren Sie die sortierten Werte erneut mit den Schlüsseln des ursprünglichen Arrays.

在 PHP 中使用自有函数对数组按值进行排序,保留键名

Verwenden Sie Ihre eigene Funktion in PHP, um das Array nach Wert zu sortieren und behalten Sie dabei die Schlüsselnamen bei.

Vorwort

In PHP kann die Funktion sort() das Array nach Wert sortieren. Allerdings zerstört diese Funktion die Schlüsselnamen. Um die Schlüsselnamen beizubehalten, müssen wir unsere eigene Funktion verwenden.

Eigene Funktionen

Die folgenden eigenen Funktionen können Arrays nach Wert sortieren und dabei Schlüsselnamen beibehalten:

function sortByValue(array $array)
{
    $sortedValues = array_column($array, null);
    asort($sortedValues);

    $sortedKeys = array_keys($sortedValues);

    return array_combine($sortedKeys, $array);
}

Praktischer Fall

Das folgende Beispiel zeigt, wie ein Array mit Schlüsselnamen sortiert wird:

$array = [
    'apple' => 10,
    'banana' => 20,
    'orange' => 5
];

$sortedArray = sortByValue($array);

print_r($sortedArray);

Die Ausgabe ist :

Array
(
    [orange] => 5
    [apple] => 10
    [banana] => 20
)

Wie Sie sehen können, wird das Array nach Wert in aufsteigender Reihenfolge sortiert, wobei die Schlüsselnamen beibehalten werden.

Das obige ist der detaillierte Inhalt vonSortieren Sie das Array in PHP mithilfe einer eigenen Funktion nach Wert und behalten Sie dabei die Schlüsselnamen bei. 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