romy: return in rekursiver funktion

Beitrag lesen

Hi Andreas,

$match=array_search_r($needle, $haystack[$i]);
//Egal was der rekursive Aufruf zurückliefert - es wird NIEMALS zurückgegeben
//hier müßte m.E. die Abprüfung auf false erfolgen und ggf. $match zurückgegeben werden.

okay, aber wo bleibt dann die Prüfung auf Gleichheit, wenn ich nach dem Aufruf schon return ausführe?

}
      if($haystack[$i]==$needle)
      {

meinst Du es so?
<code>
function array_search_r($needle, $haystack){
  $i=0;
  while($i<count($haystack)){
 if(is_array($haystack[$i])) {
  $match=array_search_r($needle, $haystack[$i]);
                if($match!==false) return $match;
 }

if($haystack[$i]==$needle) return $i;

}
 $i++;
  }
  return false;
}
</code>

Ach ja, sauberes Einrücken erleichtert es ganz wesentlich, die Codestruktur zu erkennen...

ich habe es auch eingerückt, aber ich finde es immer etwas problematisch beim posten, da alles verzerrt dargestellt wird und ich die tab-Taste nicht zur Verfügung habe. Beim Einrücken mittels Leerzeichen verzähle ich mich immer. ;)

ciao
romy