2010-03-24 4 views
0

내가 수정 한 다음 기능을 기반으로 한 누군가를 elses 기능 :PHP -이 기능을 약간 변경할 수 있습니까?

function showCombinations($string, $nameString, $linkParts, $i){ 
    $wordDivider = "/"; //the divider between the words/values 

    if ($i >= count($linkParts)){ 
     echo "<a href='".trim($string)."'>".trim($nameString)."</a>, "; 
    } else { 
     foreach ($linkParts[$i] as $currentTrait){ 

      if ($currentTrait['name']=="urltext"){ 
       $currentNameStringName=""; //ignore 
      } else { 
       $currentNameStringName=$currentTrait['name']; 
      } 

      if ($nameString!=""){ 
       $currentNameString=$nameString." - ".$currentNameStringName; 
      } else { 
       $currentNameString=$nameString.$currentNameStringName; 
      } 
      showCombinations($string.$currentTrait['value'].$wordDivider, $currentNameString, $linkParts, $i + 1); 
     } 


    } 
} 
showCombinations('', '', $linkParts, 0); 

나는이 조합을 구축하고자 그래서 내가 할 수있는 대신 ECHO의이다 수행하려면이 옵션을 변경해야 할 모든 :

$result = showCombinations('', '', $linkParts, 0); 
echo $result; 

$result을 수정해야하므로이 방법이 필요합니다.

+0

정확히 무엇을하려고합니까? –

답변

2
function showCombinations($string, $nameString, $linkParts, $i){ 
    $wordDivider = "/"; //the divider between the words/values 
    $result = ''; 

    if ($i >= count($linkParts)){ 
     $result .= "<a href='".trim($string)."'>".trim($nameString)."</a>, "; 
    } else { 
     foreach ($linkParts[$i] as $currentTrait){ 

      if ($currentTrait['name']=="urltext"){ 
       $currentNameStringName=""; //ignore 
      } else { 
       $currentNameStringName=$currentTrait['name']; 
      } 

      if ($nameString!=""){ 
       $currentNameString=$nameString." - ".$currentNameStringName; 
      } else { 
       $currentNameString=$nameString.$currentNameStringName; 
      } 
      $result .= showCombinations($string.$currentTrait['value'].$wordDivider, $currentNameString, $linkParts, $i + 1); 
     } 


    } 

    return $result; 
} 

$result = showCombinations('', '', $linkParts, 0); 
echo $result; 
+2

oops, $ result를 (를) 반환하는 것을 잊었습니다. – dar7yl

+0

oops ... 감사 : D – Joe

+0

doh .. 누구든지 문자열 대신 배열로 반환하는 방법을 알고 있습니까? – Joe

관련 문제