2012-02-17 6 views
0

J'essaye de retourner la valeur d'une fonction afin de l'écho avec une autre fonction < voici le code.Faire beaucoup de retours dans une fonction?

foreach($id as $sid){ 
$test .= '<li '.$class.'><a href="'.$post_link.'">'.$post_title.'</a></li>'; 

return $test; 
} 

avec l'autre fonction que je fais écho le résultat de cette fonction, lorsque vous faites qu'il ne montre que le premier résultat de la boucle. Quel est le problème avec le code?

+0

Post. – j08691

Répondre

1

Vous pouvez seulement return fois. Return termine l'exécution de la fonction en cours. Pour echo le résultat, faites ceci:

foreach($id as $sid){ 
    echo '<li '.$class.'><a href="'.$post_link.'">'.$post_title.'</a></li>'; 
} 

Pour que return une fois, mettre le retour à l'extérieur de la boucle for: le reste de votre code

foreach($id as $sid){ 
    $test .= '<li '.$class.'><a href="'.$post_link.'">'.$post_title.'</a></li>'; 
} 
return $test; 
6

Vous devez déplacer l'instruction return en dehors de la boucle for.

foreach($id as $sid){ 
    $test .= '<li '.$class.'><a href="'.$post_link.'">'.$post_title.'</a></li>'; 
} 

return $test; 

Une déclaration return se termine immédiatement l'exécution de la fonction en cours, et renvoie l'argument que la valeur de l'appel de fonction.

2

Mettez votre retour en dehors de la boucle:

foreach($id as $sid){ 
    $test .= '<li '.$class.'><a href="'.$post_link.'">'.$post_title.'</a></li>'; 
} 
return $test; 
Questions connexes