Rechercher une valeur dans un tableau d'objets

Résolu/Fermé
cahocaho - 3 sept. 2015 à 18:00
 cahocaho - 8 sept. 2015 à 12:51
Bonjour,
j'ai un tableau de ce genre
Array
(
    [0] => Membre Object
        (
            [_idMembre:Membre:private] => 24
            [_nomMembre:Membre:private] => kone
            [_prenomMembre:Membre:private] => drissa
            [_naissanceMembre:Membre:private] => 1897-09-20
            [_mortMembre:Membre:private] => 
            [_sexeMembre:Membre:private] => M
            [_ascendantMembre:Membre:private] => 0
            [_conjointMembre:Membre:private] => 10
            [_generationMembre:Membre:private] => 
        )

    [1] => Membre Object
        (
            [_idMembre:Membre:private] => 26
            [_nomMembre:Membre:private] => kone
            [_prenomMembre:Membre:private] => jospin
            [_naissanceMembre:Membre:private] => 1929-09-20
            [_mortMembre:Membre:private] => 
            [_sexeMembre:Membre:private] => M
            [_ascendantMembre:Membre:private] => 24
            [_conjointMembre:Membre:private] => 11
            [_generationMembre:Membre:private] => 
        )

    [2] => Membre Object
        (
            [_idMembre:Membre:private] => 29
            [_nomMembre:Membre:private] => kone
            [_prenomMembre:Membre:private] => Marcellin
            [_naissanceMembre:Membre:private] => 1946-12-22
            [_mortMembre:Membre:private] => 
            [_sexeMembre:Membre:private] => M
            [_ascendantMembre:Membre:private] => 26
            [_conjointMembre:Membre:private] => 12
            [_generationMembre:Membre:private] => 
        )

    [3] => Membre Object
        (
            [_idMembre:Membre:private] => 34
            [_nomMembre:Membre:private] => kone
            [_prenomMembre:Membre:private] => alex
            [_naissanceMembre:Membre:private] => 1975-02-02
            [_mortMembre:Membre:private] => 
            [_sexeMembre:Membre:private] => M
            [_ascendantMembre:Membre:private] => 29
            [_conjointMembre:Membre:private] => 13
            [_generationMembre:Membre:private] => 
        )

    [4] => Membre Object
        (
            [_idMembre:Membre:private] => 53
            [_nomMembre:Membre:private] => kone
            [_prenomMembre:Membre:private] => loss
            [_naissanceMembre:Membre:private] => 0000-00-00
            [_mortMembre:Membre:private] => 0000-00-00
            [_sexeMembre:Membre:private] => M
            [_ascendantMembre:Membre:private] => 34
            [_conjointMembre:Membre:private] => 0
            [_generationMembre:Membre:private] => 
        )

)

les objets sont des instances d'une classe Membre que j'ai crée.
j'aimerai pouvoir effectuer des recherches sur les proprietés de mes objets, par exemple retrouver l'objet qui a pour id 53.
j'ai essaye de bricoler la fonction array_search mais je n'y arrive pas
Quelqu'un aurait-il une sugesstion?

A voir également:

2 réponses

Pitet Messages postés 2826 Date d'inscription lundi 11 février 2013 Statut Membre Dernière intervention 21 juillet 2022 525
8 sept. 2015 à 12:10
Salut,

En supposant que ton tableau se nomme $tableauMembres, voici un début de solution :
foreach ($tableauMembres as $membre) {
    if ($membre->getId() === 53) {
        echo 'membre 53 trouvé';
        break;
    }
}

La propriété _idMembre étant privée, la classe Membre doit posséder un getter getId() afin que nous puissions y accéder.

Bonne journée
0
Merci beaucoup, ça fonctionne...
Bonne journée!!
0