2013-05-06 3 views
1

나는 다음과 같은 다차원 배열은 $ 응답을 호출하고 난 인 print_r을 할 때는 다음과 같습니다PHP 다차원 배열을 가진 foreach 키를 사용해야합니까?

array

내 foreach 루프는 다음과 같습니다하지만 작동하지 않습니다 :

foreach ($responses as $response) { 
    $output[$response['poll_response_id']] = array(
     'response' => $response['response'], 
     'response_vote_count' => 0, 
     'voters' => '' 
    ); 
} 

나는 것 나는 인 print_r을 수행 할 때이 같은 출력을 얻을 싶은 ($ 출력)

output array

답변

2

이 시도 할 수 있습니다 : 그것은 작동하지 않으면 우리는이 변수가 정확하게 정의하는 방법을 볼 수 없었기 때문에

$output = array(); 
foreach ($responses as $key => $response) { 
    $output[$key] = array(
     'response' => $response[$key], 
     'response_vote_count' => 0, 
     'voters' => '' 
    ); 
} 

는 대신 "에서 print_r"의 "$ 응답"에 "위해서 var_dump를"마십시오.

+0

안녕 antoox, 당신의 코드가 완벽하게 작동합니다. 이걸 도와 주셔서 정말 고마워요. 나는 많은 시간을이 문제를 혼자서 해결하려고 노력했으며 그 과정에서 많은 것을 배웠다. –

3

나에게 간단한 변환처럼 보인다 :

$out = array_map(function($response) { 
    return array(
    'response' => current($response), 
    'response_vote_count' => 0, 
    'voters' => '', 
); 
}, $responses); 
+0

시간 내 주셔서 감사합니다. –

관련 문제