将移位的数组插回到多维数组中

时间:2016-10-31 21:45:51

标签: php arrays multidimensional-array

到目前为止,我有一个多维数组results

foreach ($votes as $vote) {
            $choices = array();
            Foreach ($vote->getVoteChoicesOrdered() as $choice) {
                array_push($choices, $choice->getAnswer()->getID());
            }
            array_push($results, $choices);
        }

稍后,我想删除结果中每个选项的第一个元素并将位置向上移动(因此,如果需要,我可以删除[0]处的下一个元素)

foreach ($results as $res) {
                if (in_array(array_values($res)[0], $losers)) {
                    $shiftedRes = array_shift($res);
                }
            }

$losers是一个数组键数组

既然我已经移位了数组,我将如何用新的$result替换当前的$shiftedRes元素?像$results[key($res)] = $shiftedRes

这样的东西

1 个答案:

答案 0 :(得分:1)

不是从$ res数组转移,而是直接从$ results数组中进行。

foreach (array_keys($results) as $key)
{
    if (in_array(array_values($results[$key])[0], $losers))
    {
        $shiftedRes = array_shift($results[$key]);
    }
}