Recherche d'un objet par propriété dans un tableau d'objets
Étant donné un tableau d'objets où chaque objet possède une propriété "ID", nous devez identifier et récupérer l'objet qui correspond à une valeur spécifique pour la propriété ID. Considérons un tableau nommé $array avec des objets ayant les propriétés "ID" et "name".
Pour aborder ce problème, il existe deux stratégies courantes :
1. Itération du tableau :
Cela implique de parcourir chaque objet du tableau et de vérifier si sa propriété "ID" correspond à la valeur souhaitée. Cette approche est simple mais peut s'avérer inefficace pour les grands tableaux.
$item = null; foreach ($array as $struct) { if ($v == $struct->ID) { $item = $struct; break; } }
2. Création de hashmap :
Nous pouvons créer une hashmap qui utilise la propriété "ID" comme clés et les objets comme valeurs. Cela nous permet d'accéder directement à l'objet souhaité en fonction de son ID.
$hashmap = []; foreach ($array as $struct) { $hashmap[$struct->ID] = $struct; } $item = $hashmap[$v];
Si les performances sont un problème, l'approche de création de hashmap est généralement préférée pour les grands tableaux. Cependant, pour les petits tableaux, la simplicité de l'itération du tableau peut être plus adaptée.
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!