Table des matières
语法
uasort (array &$array, callable $value_compare_func): bool
Maison développement back-end tutoriel php Trier les objets dans un tableau à l'aide de PHP, en préservant les noms de clés d'origine

Trier les objets dans un tableau à l'aide de PHP, en préservant les noms de clés d'origine

May 04, 2024 pm 05:12 PM
php 数组排序 arrangement

Réponse : En PHP, utilisez la fonction uasort() pour trier les objets d'un tableau selon une fonction de comparaison définie par l'utilisateur tout en conservant les noms de clés d'origine. Description détaillée : Syntaxe : règles de la fonction de comparaison uasort($array, $value_compare_func) : accepte deux éléments du tableau comme paramètres et renvoie -1 si le premier paramètre est inférieur au deuxième paramètre. Renvoie 0 si les deux paramètres sont égaux. le premier Le paramètre est supérieur au deuxième paramètre. Cas pratique : Définir une classe Student pour représenter l'objet étudiant Utilisez la fonction uasort() pour trier le tableau $students en fonction de l'âge des étudiants tout en conservant les noms de clés d'origine.

使用 PHP 对数组中的对象进行排序,保留原始键名

Utilisez PHP pour trier le tableau $students Tri des objets

En PHP, vous pouvez utiliser la fonction uasort() pour trier les objets dans un tableau tout en préservant les noms de clés d'origine. Cette fonction trie les éléments du tableau par ordre croissant ou décroissant à l'aide d'une fonction de comparaison fournie par l'utilisateur. uasort() 函数对数组中的对象进行排序,同时保留原始键名。该函数使用用户提供的比较函数,将数组元素按升序或降序排序。

语法

uasort ( array &$array, callable $value_compare_func ) : bool

其中:

  • $array 是要排序的数组,传递引用以便直接修改
  • $value_compare_func
  • Syntaxe

uasort (array &$array, callable $value_compare_func): bool

où :

  • $array est le tableau à trier, passez le référence donc Modifier directement
  • $value_compare_func est une fonction de comparaison fournie par l'utilisateur qui accepte deux valeurs comme paramètres et renvoie leurs résultats de comparaison par ordre croissant ou décroissant

      Fonction de comparaison
    • La fonction de comparaison doit suivre les règles suivantes :
    • reçoit deux éléments du tableau en paramètres
  • renvoie l'une des valeurs suivantes :

-1 : Le premier paramètre est inférieur au deuxième paramètre

0 : Les deux paramètres sont égaux

1 : Le premier Le premier paramètre est supérieur au deuxième paramètre

🎜Cas pratique🎜🎜Considérons un tableau contenant des objets étudiants, chaque élève a des attributs de nom et d'âge. Nous souhaitons trier les étudiants par âge par ordre croissant tout en conservant les noms de clés d'origine. 🎜🎜Code🎜
<?php

class Student
{
    public $name;
    public $age;

    public function __construct($name, $age)
    {
        $this->name = $name;
        $this->age = $age;
    }
}

$students = [
    "John Doe" => new Student("John Doe", 25),
    "Jane Smith" => new Student("Jane Smith", 22),
    "Peter Parker" => new Student("Peter Parker", 28)
];

uasort($students, function ($a, $b) {
    return $a->age <=> $b->age;
});

print_r($students);
Copier après la connexion
🎜Sortie🎜
Array
(
    [Jane Smith] => Student Object
        (
            [name] => Jane Smith
            [age] => 22
        )
    [John Doe] => Student Object
        (
            [name] => John Doe
            [age] => 25
        )
    [Peter Parker] => Student Object
        (
            [name] => Peter Parker
            [age] => 28
        )
)
Copier après la connexion
🎜Comme vous pouvez le constater, les étudiants ont été triés par âge par ordre croissant et les noms de clés d'origine sont toujours là. 🎜

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 de ce site Web
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

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Dois-je utiliser Flexbox au centre de l'image bootstrap? Dois-je utiliser Flexbox au centre de l'image bootstrap? Apr 07, 2025 am 09:06 AM

Il existe de nombreuses façons de centrer des photos de bootstrap, et vous n'avez pas à utiliser Flexbox. Si vous avez seulement besoin de centrer horizontalement, la classe de cent texte est suffisante; Si vous devez centrer verticalement ou plusieurs éléments, Flexbox ou Grid convient plus. Flexbox est moins compatible et peut augmenter la complexité, tandis que Grid est plus puissant et a un coût d'enseignement supérieur. Lorsque vous choisissez une méthode, vous devez peser les avantages et les inconvénients et choisir la méthode la plus appropriée en fonction de vos besoins et préférences.

Expliquez l'expression de correspondance (PHP 8) et comment elle diffère du commutateur. Expliquez l'expression de correspondance (PHP 8) et comment elle diffère du commutateur. Apr 06, 2025 am 12:03 AM

Dans PHP8, les expressions de correspondance sont une nouvelle structure de contrôle qui renvoie différents résultats en fonction de la valeur de l'expression. 1) Il est similaire à une instruction Switch, mais renvoie une valeur au lieu d'un bloc d'instruction d'exécution. 2) L'expression de correspondance est strictement comparée (===), ce qui améliore la sécurité. 3) Il évite les éventuelles omissions de rupture dans les instructions de commutation et améliore la simplicité et la lisibilité du code.

Qu'est-ce que la contrefaçon de demande inter-sites (CSRF) et comment implémentez-vous la protection CSRF dans PHP? Qu'est-ce que la contrefaçon de demande inter-sites (CSRF) et comment implémentez-vous la protection CSRF dans PHP? Apr 07, 2025 am 12:02 AM

En PHP, vous pouvez prévenir efficacement les attaques du CSRF en utilisant des jetons imprévisibles. Les méthodes spécifiques comprennent: 1. Générer et intégrer les jetons CSRF dans la forme; 2. Vérifiez la validité du jeton lors du traitement de la demande.

PHP et Python: comparaison de deux langages de programmation populaires PHP et Python: comparaison de deux langages de programmation populaires Apr 14, 2025 am 12:13 AM

PHP et Python ont chacun leurs propres avantages et choisissent en fonction des exigences du projet. 1.Php convient au développement Web, en particulier pour le développement rapide et la maintenance des sites Web. 2. Python convient à la science des données, à l'apprentissage automatique et à l'intelligence artificielle, avec syntaxe concise et adaptée aux débutants.

Expliquez des types stricts (Declare (strict_types = 1);) en php. Expliquez des types stricts (Declare (strict_types = 1);) en php. Apr 07, 2025 am 12:05 AM

Les types stricts en PHP sont activés en ajoutant Declare (strict_types = 1); en haut du fichier. 1) Il force la vérification du type des paramètres de fonction et des valeurs de retour pour éviter la conversion de type implicite. 2) L'utilisation de types stricts peut améliorer la fiabilité et la prévisibilité du code, réduire les bogues et améliorer la maintenabilité et la lisibilité.

Comment pouvez-vous empêcher une classe d'être prolongée ou une méthode d'être remplacée en PHP? (mot-clé final) Comment pouvez-vous empêcher une classe d'être prolongée ou une méthode d'être remplacée en PHP? (mot-clé final) Apr 08, 2025 am 12:03 AM

Dans PHP, le mot-clé final est utilisé pour empêcher les classes d'être héritées et les méthodes écrasées. 1) Lors du marquage de la classe comme final, la classe ne peut pas être héritée. 2) Lors du marquage de la méthode comme final, la méthode ne peut pas être réécrite par la sous-classe. L'utilisation de mots clés finaux garantit la stabilité et la sécurité de votre code.

L'avenir de PHP: adaptations et innovations L'avenir de PHP: adaptations et innovations Apr 11, 2025 am 12:01 AM

L'avenir de PHP sera réalisé en s'adaptant aux nouvelles tendances technologiques et en introduisant des fonctionnalités innovantes: 1) s'adapter aux architectures de cloud computing, de conteneurisation et de microservice, en prenant en charge Docker et Kubernetes; 2) introduire des compilateurs JIT et des types d'énumération pour améliorer l'efficacité des performances et du traitement des données; 3) Optimiser en continu les performances et promouvoir les meilleures pratiques.

PHP vs Python: comprendre les différences PHP vs Python: comprendre les différences Apr 11, 2025 am 12:15 AM

PHP et Python ont chacun leurs propres avantages, et le choix doit être basé sur les exigences du projet. 1.Php convient au développement Web, avec une syntaxe simple et une efficacité d'exécution élevée. 2. Python convient à la science des données et à l'apprentissage automatique, avec une syntaxe concise et des bibliothèques riches.

See all articles