Php 如何修改foreach循环中的数组?

Php 如何修改foreach循环中的数组?,php,Php,我有这个代码,但不工作 $arr1 = array('test1', 'test2', 'test3'); $arr2 = array(1, 2, 3); foreach ($arr1 as $x) { $m = array_shift($arr2); //at this point, $arr2 remains unchanged, why? continue; } $arr2在迭代内和迭代之间似乎没有变化。任何见解都将受到高度赞赏。谢谢 这确实有效。此代码如下

我有这个代码,但不工作

$arr1 = array('test1', 'test2', 'test3');
$arr2 = array(1, 2, 3);

foreach ($arr1 as $x) {
    $m = array_shift($arr2);

    //at this point, $arr2 remains unchanged, why?

    continue;
}

$arr2在迭代内和迭代之间似乎没有变化。任何见解都将受到高度赞赏。谢谢

这确实有效。此代码如下:

$arr1 = array('test1', 'test2', 'test3');
$arr2 = array(1, 2, 3);

foreach ($arr1 as $x) {
    $m = array_shift($arr2);

    print_r($arr2);

    continue;
}
将打印以下内容:

Array ( [0] => 2 [1] => 3 ) Array ( [0] => 3 ) Array ( ) 
可能重复的