Page 1 sur 1

Fatal error: Call to undefined function recursive_array

Posté : 30 mars 2010, 11:13
par gui
Bonjours à tous,
Voilà je suis désolé de demander une nouvelle fois votre aide mais je bloque sur un étrange problème.
La derniere fois vous m'aviez recommander d'utiliser la fonction recursive array_search récupérer sur php.net. Cette fonction permet de faire exactement se que je souhaite à savoir récupérer la clé d'une valeur.

function recursive_array_search($needle,$haystack) {
    		foreach($haystack as $key=>$value) {
      		  $current_key=$key;
       			if($needle===$value OR (is_array($value) && recursive_array_search($needle,$value) !== false)) {  
        			 return $current_key;
        		}
    		}
    	return false;
	}
Celle ci fonctionne correctement seulement lorsque je l'appelle

$found=new selection();
$found->recursive_array_search($max,$this->tab);

Celle ci me renvoie une erreur fatale:

Fatal error: Call to undefined function recursive_array_search()

En m'indiquant la ligne "if($needle===$value OR (is_array($value) && recursive_array_search($needle,$value) !== false))" ci dessus ligne 4.
C'est cela que je ne comprend pas pourquois me dit-il que cette fonction recursive_array_search contenue dans cette même fonction n'est pas définie??

La fonction se trouve dans le même script du coup pas besoin de mettre de Include ou require_once.
Voila si quelqu'un peut m'aider de nouveau.

Merci d'avance

Re: Fatal error: Call to undefined function recursive_array

Posté : 30 mars 2010, 11:14
par stealth35
cette fonction ne fais pas partie de ta class
recursive_array_search($max, $found->tab);

Re: Fatal error: Call to undefined function recursive_array

Posté : 30 mars 2010, 11:20
par gui
Effectivement elle est en dehors de la fonction où je l'appelle, mais si je la place dans la fonction où je l'appelle ca va marche la première fois puis dès que la fonction est à nouveau parcourus il me dit que cette fonction est déjà définie, ducoup je l'ai placé dans le même script juste apres cette fonction

Re: Fatal error: Call to undefined function recursive_array

Posté : 30 mars 2010, 11:21
par stealth35
donc c'est bon

Re: Fatal error: Call to undefined function recursive_array

Posté : 30 mars 2010, 11:23
par gui
Je sais théoriquement ca devrai fonctionner mais c'est le contenue de la fonction recursive qui pose problème et je ne voie pas pourquois

Re: Fatal error: Call to undefined function recursive_array

Posté : 30 mars 2010, 11:32
par gui
Lorsque je met
recursive_array_search($max, $found->tab);
à la place de
$found->recursive_array_search($max,$this->tab)
Le script me repporte le même problème:"Fatal error: Call to undefined function recursive_array_search()" à cette même ligne

Re: Fatal error: Call to undefined function recursive_array

Posté : 30 mars 2010, 11:34
par stealth35
faut pas que ton recursive_array_search soit definie dans ta classe

Re: Fatal error: Call to undefined function recursive_array

Posté : 30 mars 2010, 11:58
par gui
C'est bon ca fonctionne nikel effetivement il fallait qu'elle soit en dehors de la classe.
Merci beaucoup stealth35 tu es un boss du php
Merci pour tout