2011-03-15 3 views

답변

1

임시 변수 없이는 그렇게 할 수 없습니다.

ps : "godlike"함수의 샘플입니다. 함수는 필요한 것보다 더 많이 반환하면 안됩니다.

+0

예제 코드의 반환 값은 단지 목록 일뿐입니다. 그게 무슨 문제 야? – KingCrunch

+0

@ KingCrunch : 문제가 무엇인가요? 모든 함수는 필요한만큼의 데이터를 반환해야합니다. 더 많지 않습니다. 따라서 반환 된 백만 개의 항목 중 하나를 참조 해제하는 방법에 대해 절대 묻지 않습니다. – zerkms

+0

함수가'getCategories()'라고 상상해보십시오. 목록은 이미 필요한 데이터입니다. 그것의 의미를 파괴하지 않고 줄일 수 없습니다. – KingCrunch

3

제안되었지만 아직 사용할 수 없습니다. 당신이 당신의 함수에서 매개 변수를 전달하지 않는 이유는

http://wiki.php.net/rfc/functionarraydereferencing

우리는 오류

function returnArray($i){ 
    static $array = array(
      0 => "kittens", 
      1 => "puppies" 
     ); 
    return $array[$i];  
} 

echo returnArray(0); 
3

를 볼 수 있습니다?

function returnArray($key=null){ 
    $array = array(
    0 => "kittens", 
    1 => "puppies" 
); 
    return is_null($key) ? $array : $array[$key];  
} 

echo returnArray(0); // only 0 key 
echo returnArray(); // all the array 
관련 문제