Wie sortiere ich in PHP ein Array nur nach bestimmten Schlüsselwertpaaren des Arrays und behalte dabei die Schlüsselnamen bei?

PHPz
Freigeben: 2024-05-04 09:03:01
Original
866 Leute haben es durchsucht

Beim Sortieren eines Arrays nach Schlüssel-Wert-Paaren in PHP können Sie die Funktion uasort() verwenden, um eine Rückruffunktion zu erhalten, um die Schlüsselwerte zu vergleichen und die Schlüsselnamen beizubehalten. Um beispielsweise Mitarbeiterdatensätze nach ihrem Gehalt zu sortieren, können Sie mit der Funktion uksort() den Gehaltswert aus jedem Element zum Vergleich extrahieren und so die Datensätze von niedrigem zu hohem Gehalt sortieren.

在 PHP 中,如何仅按数组某些键值对对数组进行排序,保留键名?

Sortieren Sie das Array basierend auf dem Schlüsselwertpaar in PHP.

Manchmal müssen wir beim Sortieren des Arrays in PHP es basierend auf einem bestimmten Schlüsselwertpaar sortieren und dabei die Schlüsselnamen beibehalten. In diesem Artikel wird erläutert, wie Sie dieses Ziel erreichen.

<?php

// 创建一个数组
$arr = [
    'a' => 1,
    'b' => 3,
    'c' => 2,
    'd' => 4,
];

// 使用 uasort() 函数,接收一个回调函数
uksort($arr, function($a, $b) use ($arr) {
    return $arr[$a] <=> $arr[$b];
});

// 打印排序后的数组,保留键名
print_r($arr);
Nach dem Login kopieren

Praktischer Fall: Sortieren von Mitarbeiterdatensätzen nach Mitarbeitergehalt

Angenommen, es gibt ein Array mit Mitarbeiterdatensätzen:

$employees = [
    'John Doe' => ['salary' => 50000],
    'Jane Smith' => ['salary' => 40000],
    'Peter Jones' => ['salary' => 60000],
];
Nach dem Login kopieren

Um Mitarbeiterdatensätze nach Gehalt zu sortieren, verwenden wir eine zusätzliche anonyme Funktion, um jedes Element aus dem Array zu entfernen Gehalt aus Elementen extrahieren:

// 按薪酬排序
uksort($employees, function($a, $b) use ($employees) {
    return $employees[$a]['salary'] <=> $employees[$b]['salary'];
});
Nach dem Login kopieren

Jetzt wird das $employees-Array nach Mitarbeitergehalt von niedrig nach hoch sortiert, wobei der Mitarbeiternamenschlüssel beibehalten wird.

Das obige ist der detaillierte Inhalt vonWie sortiere ich in PHP ein Array nur nach bestimmten Schlüsselwertpaaren des Arrays und behalte dabei die Schlüsselnamen bei?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
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