2012-02-17 42 views
0

我試圖返回一個函數的值,以便用另一個函數<來回顯它的代碼。在函數中做很多返回?

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

return $test; 
} 

與其他函數我回聲此函數的結果,當這樣做時,它只顯示for循環的第一個結果。代碼有什麼問題?

+0

發佈您的代碼的其餘部分。 – j08691 2012-02-17 19:39:54

回答

1

你只能return一次。 Return結束當前函數的執行。爲了echo結果,這樣做:

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

要僅return一次,把for環外的回報:

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

您需要將return語句移到for循環之外。

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

return $test; 

一個return語句,將立即結束此函數的執行並將它的參數作爲函數調用的值。

2

把你的外循環回:

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