Maison > développement back-end > tutoriel php > Comment puis-je rechercher efficacement des entrées de tableau en fonction des propriétés d'un objet en PHP ?

Comment puis-je rechercher efficacement des entrées de tableau en fonction des propriétés d'un objet en PHP ?

Susan Sarandon
Libérer: 2024-11-29 19:31:13
original
136 Les gens l'ont consulté

How Can I Efficiently Find Array Entries Based on Object Properties in PHP?

Recherche d'entrées de tableau par propriété d'objet

Si vous disposez d'un tableau d'objets et que vous devez localiser une entrée spécifique en fonction d'une valeur de propriété, il existe deux approches principales : l'itération ou la création de hashmap.

Itération Approche :

Cette approche convient aux recherches ponctuelles. Cela implique de parcourir le tableau et de vérifier chaque objet pour une valeur de propriété correspondante :

$item = null;
foreach ($array as $struct) {
    if ($v === $struct->ID) {
        $item = $struct;
        break;
    }
}
Copier après la connexion

Création de Hashmap :

Pour des recherches plus rapides, en particulier si vous devez effectuer plusieurs recherches, envisagez de créer une hashmap à l'aide d'un tableau associatif. Cette méthode consiste à créer un nouveau tableau indexé par les propriétés de l'objet d'intérêt :

$hashmap = [];
foreach ($array as $struct) {
    $hashmap[$struct->ID] = $struct;
}

$item = $hashmap[$v];
Copier après la connexion

Cela permet une récupération instantanée de l'objet souhaité par la valeur de sa propriété. Notez que les objets stdClass de votre exemple sont accessibles via la syntaxe de l'opérateur fléché (->) en PHP.

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!

source:php.cn
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal