Pour conserver les noms de clé du tableau trié, vous pouvez utiliser la méthode suivante : utilisez ksort() et krsort() pour trier par clé et conserver l'ordre des clés. Utilisez array_multisort() pour trier simultanément sur plusieurs colonnes (y compris les clés). Définissez des fonctions de comparaison personnalisées pour contrôler le classement.
Comment conserver les noms de clés dans un tableau trié en utilisant PHP ?
Parfois, après avoir trié un tableau en PHP, vous souhaitez conserver les noms de clés d'origine. Voici comment procéder :
Utilisation des fonctions ksort()
et 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()
et krsort()
Trie un tableau par clé. Ces fonctions conservent les noms de clés respectivement par ordre croissant et décroissant : // 按键升序排序,如果键相等则按值降序排序
$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()
pour trier plusieurs colonnes de tableau en même temps time , y compris les clés : 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>'; }
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!