le 02/08/2012 à 16:23
recherche dans un tableau
Bonjour,
J'ai 2 tables constitués comme suit (elles sont beaucoup plus importantes mais elles sont réduites ici pour cette demande) :
table des individus
Array (
[4173I] => Array ( [prenom] => Patrick [nom] => LAPORTE [ancetres] => 6604U )
[4174I] => Array ( [prenom] => Françoise [nom] => MORAUD [ancetres] => )
[4177I] => Array ( [prenom] => Delphine [nom] => LAPORTE [ancetres] => 6625U )
[4179I] => Array ( [prenom] => Gaston [nom] => LAPORTE [ancetres] => )
[4187I] => Array ( [prenom] => Rolande [nom] => VINCENT [ancetres] => )
[5349I] => Array ( [prenom] => Alex [nom] => PINOT [ancetres] => 6632U )
[5350I] => Array ( [prenom] => Kévin [nom] => PINOT [ancetres] => )
)
table des familles
Array (
[6604U] => Array ( [MARI] => 4179I [FEMME] => 4187I )
[6625U] => Array ( [MARI] => 4173I [FEMME] => 4174I )
[6632U] => Array ( [MARI] => 5350I [FEMME] => 4177I )
)
Le but est de rechercher les parents de chaque individu grâce au code ancetres de la table individu pour aller chercher dans la table des familles les parents donc le mari et la femme.
Une fois trouvé le mari ou la femme, son code permet de repartir dans la table individu et ainsi de suite.
Donc par exemple en ayant au départ le code 5349I dans la table individu, j'y trouve le code ancetres 6632U qui me donne dans la table des familles le MARI 5350I et la FEMME 4177I.
De là je vais dans la table individus avec le code 4177I qui me donne Delphine LAPORTE avec son code ancetres 6625U et je repars dans la table des familles avec ce code et ainsi de suite.
Faire une boucle pour rechercher serait facile mais mes tables comportent près de 5000 individus, donc très long.
J'ai voulu essayer avec array_search ($key = array_search('6625U', $infos_indi);) qui ne trouve rien et différents autres essais ne me donnent rien, je n'arrive pas à m'en sortir car je pense que çà ne marche pas vu que c'est un tableau à plusieurs dimensions.
J'ai essayé aussi avec des boucles imbriquées, première boucle sur la clé et array_search sur le reste, sans résultat non plus.
Que faut il que j'emploie et de quelle manière pour arriver directemet sur un élément de chaque table ???
Merci beaucoup de vos réponses.
Cordialement.
J'ai 2 tables constitués comme suit (elles sont beaucoup plus importantes mais elles sont réduites ici pour cette demande) :
table des individus
Array (
[4173I] => Array ( [prenom] => Patrick [nom] => LAPORTE [ancetres] => 6604U )
[4174I] => Array ( [prenom] => Françoise [nom] => MORAUD [ancetres] => )
[4177I] => Array ( [prenom] => Delphine [nom] => LAPORTE [ancetres] => 6625U )
[4179I] => Array ( [prenom] => Gaston [nom] => LAPORTE [ancetres] => )
[4187I] => Array ( [prenom] => Rolande [nom] => VINCENT [ancetres] => )
[5349I] => Array ( [prenom] => Alex [nom] => PINOT [ancetres] => 6632U )
[5350I] => Array ( [prenom] => Kévin [nom] => PINOT [ancetres] => )
)
table des familles
Array (
[6604U] => Array ( [MARI] => 4179I [FEMME] => 4187I )
[6625U] => Array ( [MARI] => 4173I [FEMME] => 4174I )
[6632U] => Array ( [MARI] => 5350I [FEMME] => 4177I )
)
Le but est de rechercher les parents de chaque individu grâce au code ancetres de la table individu pour aller chercher dans la table des familles les parents donc le mari et la femme.
Une fois trouvé le mari ou la femme, son code permet de repartir dans la table individu et ainsi de suite.
Donc par exemple en ayant au départ le code 5349I dans la table individu, j'y trouve le code ancetres 6632U qui me donne dans la table des familles le MARI 5350I et la FEMME 4177I.
De là je vais dans la table individus avec le code 4177I qui me donne Delphine LAPORTE avec son code ancetres 6625U et je repars dans la table des familles avec ce code et ainsi de suite.
Faire une boucle pour rechercher serait facile mais mes tables comportent près de 5000 individus, donc très long.
J'ai voulu essayer avec array_search ($key = array_search('6625U', $infos_indi);) qui ne trouve rien et différents autres essais ne me donnent rien, je n'arrive pas à m'en sortir car je pense que çà ne marche pas vu que c'est un tableau à plusieurs dimensions.
J'ai essayé aussi avec des boucles imbriquées, première boucle sur la clé et array_search sur le reste, sans résultat non plus.
Que faut il que j'emploie et de quelle manière pour arriver directemet sur un élément de chaque table ???
Merci beaucoup de vos réponses.
Cordialement.