使用多维数组的php foreach我需要使用密钥吗?

时间:2013-05-06 14:07:42

标签: php multidimensional-array foreach

我有以下多维数组,称为$ response,当我执行print_r时它看起来像这样

array

我的foreach循环看起来像这样,但它不起作用:

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

当我执行print_r($ output)

时,我想获得这样的输出

output array

2 个答案:

答案 0 :(得分:3)

似乎是对我的简单转变:

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

答案 1 :(得分:2)

你可以试试这个:

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

如果它不起作用,请执行" var_dump" on" $ answers"而不是" print_r"因为我们没有看到这个变量是如何准确定义的。