2011-04-25 4 views
7

PHP에서 함수의 반환 값을 배열로 해석하는 방법이 있습니까? 대신 글을 쓰는함수의 반환 값을 배열로 직접 해석하기

function getArray() { 
    return array("foo", "bar"); 
} 

:

$array = getArray(); 
$var = $array[1]; 

내가 "바"에 액세스하려면 직접 약간 같은 :

$var = getArray()[1]; //this causes an error 

답변

11

당신이 원하는 무엇

내가하는 기능이 있다고 할 수 있습니다 배열 역 참조 (array dereferencing)라고하며 PHP 5.4 (곧 출시 될 PHP 버전)에서만 지원됩니다. 이 단지 참고 용이며 없습니다 당신이 다른 함수에 전달하는 값을해야하는 경우

list(, $var) = getArray(); 

, 당신은 여전히 ​​(제한 주위에 을 해킹 할 수

지금 당신은 list 언어 구조를 사용할 수 있습니다 당신은을 사용해야합니다.)

func(${'_'.!$_=getArray()}[1]); // using the $_ var 
func(${!${''}=getArray()}[1]); // using the $ var 
+0

+1 - 파서를 망칠 수 있습니다. – hakre

관련 문제