使用foreach循环在PHP中动态地向二维数组添加值

men*_*ici 0 php foreach post loops multidimensional-array

我从表单提交中得到以下数组:

 Array ( [id0] => id [gd0] => 50% [q0] => 1 [p0] => 10 [t0] => 10 [id1] => id [gd1] => 65%     [q1] => 2 [p1] => 20 [t1] => 40 [id2] => id [gd2] => 90% [q2] => 2 [p2] => 510 [t2] => 1020 )
Run Code Online (Sandbox Code Playgroud)

我希望通过存储相同的值,使其成为一个二维数组,在这样的新模式中:

Array (array([id0] => id [gd0] => 50% [q0] => 1 [p0] => 10 [t0] => 10 ) , array([id1] => id [gd1] => 65% [q1] => 2 [p1] => 20 [t1] => 40 ) , array([id2] => id [gd2] => 90% [q2] => 2 [p2] => 510 [t2] => 1020))
Run Code Online (Sandbox Code Playgroud)

因此,我试图在另一个数组中重新排列新维度中的类似信息.我尝试了一个foreach循环,但没有运气:

 $items = array();
                $X = -1; // the index of the first dimension
                $Y = 0; // the second index


 foreach ($_POST as $val) {


                    if ($val == 'id') {

                        $X++;
                        $Y = 0;
                    } else {

                        $items[$X][$Y] == $val;

                        // increment the second index to prevent overwriting

                        $Y++;
                    }
                }

                print_r($items);
Run Code Online (Sandbox Code Playgroud)

但是,它不起作用.print_r()仅显示Array()

小智 5

您在语句中使用了相等运算符==而不是赋值运算符.=else