Um die Schlüsselnamen des sortierten Arrays beizubehalten, können Sie die folgende Methode verwenden: Verwenden Sie ksort() und krsort(), um nach Schlüssel zu sortieren und die Schlüsselreihenfolge beizubehalten. Verwenden Sie array_multisort(), um gleichzeitig nach mehreren Spalten (einschließlich Schlüsseln) zu sortieren. Definieren Sie benutzerdefinierte Komparatorfunktionen, um die Sortierung zu steuern.
Wie verwaltet man Schlüsselnamen in einem sortierten Array mit PHP?
Manchmal möchte man nach dem Sortieren eines Arrays in PHP die ursprünglichen Schlüsselnamen beibehalten. So geht's:
Verwenden der Funktionen ksort()
und krsort()
ksort()
和 krsort()
函数
ksort()
和 krsort()
按键对数组进行排序。这些函数分别按升序和降序对保持键名:
// 按键升序排序 $array = ['name' => 'John', 'age' => 30, 'city' => 'New York']; ksort($array); // 按键降序排序 $array = ['name' => 'John', 'age' => 30, 'city' => 'New York']; krsort($array);
使用 array_multisort()
函数
array_multisort()
ksort()
und krsort()
Sortiert ein Array nach Schlüssel. Diese Funktionen verwalten Schlüsselnamen in aufsteigender bzw. absteigender Reihenfolge: // 按键升序排序,如果键相等则按值降序排序
$names = ['name1', 'name3', 'name5', 'name2', 'name4'];
$ages = [20, 30, 50, 40, 60];
array_multisort($names, SORT_ASC, SORT_NUMERIC, $ages, SORT_DESC);
array_multisort()
array_multisort()
, um mehrere Array-Spalten gleichzeitig zu sortieren Zeit, einschließlich Schlüssel: function compareKeys($a, $b) {
return strcmp($a['key'], $b['key']);
}
$array = [{'key' => 'a'}, {'key' => 'c'}, {'key' => 'b'}];
usort($array, 'compareKeys');
// 获取用户数据 $users = [ ['id' => 1, 'name' => 'John Doe'], ['id' => 3, 'name' => 'Jane Smith'], ['id' => 2, 'name' => 'Bob Johnson'] ]; // 使用 ksort 按键升序排序用户 ksort($users); // 按升序的键输出用户列表 foreach ($users as $user) { echo $user['id'] . ': ' . $user['name'] . '<br>'; }
Das obige ist der detaillierte Inhalt vonWie pflege ich Schlüsselnamen in einem sortierten Array mit PHP?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!