2014-03-03 5 views
0

이 함수는 숫자 배열 또는 하나의 숫자가 할당 된 변수를 받아들이도록 코딩했습니다. 이제 단일 숫자 변수를 전달하면 잘 작동하지만 배열이 전달되면 오류 (배열을 문자열로 변환)가 반환됩니다.재귀 함수 코딩

아래 예제를 참조하십시오. 내가 뭘 잘못하고 있는지 말해 줄 수 있습니까?

function recusive($data){ 
    if(is_array($data)){ 
     $price = array(); 
     foreach($data as $number){ 
      $price[] = recruisive($number); 
     } 
    }else{ 
     $formatted = number_format($data,2); 
     $price = '£' . $formatted; 
    } 

    return $price; 
} 

$input = array(130, 333, 444, 555); 

echo recursive($input); 
+0

'$ price [] = recruisive ($ number);'다른 함수 또는 맞춤법 오류? – ElefantPhace

+2

함수 이름의 철자가 잘못되었습니다. 2 번 줄에서는''재치행 (recusive) '이라고 쓰여 있고 6 번 줄에서는''모호하다. 그리고 마지막으로'recursive'를 사용하여 함수를 호출하는 16 줄 ... – barell

+3

'recusive','recruisive','recursive' - 당신은 너무 많은 오타가 있습니다. – Eternal1

답변

0

배열을 반환하기 때문에. 시도 :

print_r(recursive($input)); 

또는 루프를 그 표시를 통해 : 또한

foreach(recursive($input) as $value) { 
    echo $value; 
} 

, 당신은 recursive 3 번 시도 만 정확하게 1 시간을 철자 한 : 재귀 recusive, recruisive