Chercher dans 2 tableau

Mammouth du PHP | 725 Messages

03 juin 2011, 04:10

bonjour,

j'effectue une recherche sur 2 tableau different, d'une clef et d'une valeur, ca retourne une erreur:
Warning: in_array() [function.in-array]: Wrong datatype for second argument in index.php on line 233
c'est normal, parce que la clef ne se trouve pas, voila le code:
$globArr = array(
'id' => array(''),
'class' => array('')
);
$tabArr = array(
'target' => array('_self', '_blank', '_parent', '_top')
);

// supposon que cle = id
if((array_key_exists($cle, $this->tabArr) === true) OR ((array_key_exists($cle, $this->globArr) === true)))
      				{
      					// id n existe pas au tabArr mais globArr
							if(in_array($val,$this->tabArr[$cle]) OR (in_array($val,$this->globArr[$cle])))
						
						{
							
							}
							
}
comment puis je eviter cette erreur tout en conservant les 2 tableaux (tab et glob)

merci

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

03 juin 2011, 13:53

Tu testes si ta clé existe dans l'un des deux tableaux, mais ensuite tu essayes de récupérer ton index sans te soucier de savoir dans quel tableau il a été trouvé... ajoute un test pour vérifier dans quel tableau il se trouve avant de l'utiliser :

Code : Tout sélectionner

SI index dans tableau A OU index dans tableau B SI index dans tableau A traitement tableau A SINON traitement tableau B FIN SI FIN SI
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...

Mammouth du PHP | 725 Messages

06 juin 2011, 03:45

je l'ai fait separement un par un:
SI index dans tableau A
      traitement tableau A
   SINON
      traitement tableau B
   FIN SI
merci Ryle