2012-02-24 1 views
0

는 : 배열의 각 요소를 변수에 할당하는 PHP 내장 함수가 있습니까? 예를 들어

$array = array('f', 'b'); 
assign($foo, $bar, $array); 

// now $foo = 'f' and $bar = 'b' 

는 다음과 같이는 PHP 언어로 존재 하는가

? 나는 전에 이런 것을 필요로하지 않았고 이것을 할 수있는 것을 찾을 수 없다.

저는 직접 함수를 작성하기 전에 언어에 이미 존재하는 것을 쓰고 싶지 않습니다.

+0

입니다 그렇게하지 말라. 디버깅이 어렵고 해킹을 위해 모든 종류의 문을 엽니 다. – Mikhail

답변

3
list ($foo, $bar) = $array; 

list()array()의 반대와 언어 구조 같은 것입니다. 그것의 특히 중요하다, 그것의 설명서의 기능 참조 (list())에 열거 되더라도, 그것은 아무 기능이 쓰기 가능하기 때문에, 그렇지 않다. 당신이 PHP의 list() 기능을 사용할 수 있습니다

+0

정확히 내가 뭘 찾고 있었습니까, 감사합니다. :)! 나는 '목록'에 대해 잊어 버렸다. 최대한 빨리 받아 들일 것입니다. –

+0

다른 답변을 보면, 당신은 혼자가 아닙니다. 나는 조금 놀랐다 ... – KingCrunch

+0

@KingCrunch, 네, 나는'list'도 사용했지만, PHP는 분명히 녹슬 었습니다. –

1

PHP의 가까운 가까운 extract() 기능.

배열의 각 값을 키 이름으로 지정해야합니다.

$array = array('foo' => 'f', 'bar' => 'b'); 
extract($array); 
// now $foo = 'f' and $bar = 'b' 

1

$array = array('f', 'b'); 
list($foo, $bar) = $array; 

지금은 비슷한 설정이 요청 변수`register_globals`뿐만에 관계없이 그 난 강력하게 권합니다 존재

$foo = 'f' and $bar = 'b'; 

php.net/list

+0

허, 마이너스 투표는 무엇입니까? 설명에 신경 써라? –

+0

아마도 솔루션이 이미 답변으로 게시 된 후에도 매우 간단한 솔루션을 먼저 게시 한 다음 더 자세히 편집하여 수락 된 응답을 도킹하려고했기 때문일 수 있습니다. 그냥 추측, 그건 내가 아니야! –

+0

@IbrahimAzharArmar, 다운 투표가 있었다면 제거되었습니다. –