Maison  >  Article  >  développement back-end  >  Trier le tableau par valeur en PHP en utilisant sa propre fonction, en préservant les noms de clés

Trier le tableau par valeur en PHP en utilisant sa propre fonction, en préservant les noms de clés

PHPz
PHPzoriginal
2024-05-05 08:36:02953parcourir

En PHP, la façon de trier un tableau par valeur et de conserver les noms de clés en utilisant sa propre fonction est d'obtenir toutes les valeurs du tableau et de les trier. Obtenez la clé de la valeur triée. Recombinez les valeurs triées avec les clés du tableau d'origine.

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

Utilisez votre propre fonction en PHP pour trier le tableau par valeur, en conservant les noms de clés

Préface

En PHP, la fonction sort() peut trier le tableau par valeur. Cependant, cette fonction détruit les noms de clés. Afin de conserver les noms de clés, nous devons utiliser notre propre fonction.

Fonctions propres

Les fonctions autonomes suivantes peuvent trier les tableaux par valeur tout en préservant les noms de clés :

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

    $sortedKeys = array_keys($sortedValues);

    return array_combine($sortedKeys, $array);
}

Cas pratique

L'exemple suivant montre comment trier un tableau contenant des noms de clés :

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

$sortedArray = sortByValue($array);

print_r($sortedArray);

Le le résultat est :

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

Comme vous pouvez le voir, le tableau est trié par valeur par ordre croissant tout en conservant les noms de clés.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn