1

我从 excel 电子表格中获取数据,对其进行循环,然后将其保存到数组中。然后,我循环该数据两次。

我愿意:

foreach($someData as $key => $value) {

}

我将需要再次 foreach 相同的数组。有什么办法可以让我再次使用 $key => $value 而不会造成任何问题?

4

1 回答 1

4

听起来您只需要一个循环,但要回答您的问题,您可以这样做:

foreach($someData as $key => $value) {
    #do stuff here
}

foreach($someData as $key => $value) {
    #do more stuff here
}

$key并且$value会在每个循环的每次迭代中被覆盖,所以这里没有危险。

但是,您的问题有点不清楚-如果您有foreach另一个内部,foreach并且想为每个循环的键和值使用相同的变量名集,请使用函数。这是在 PHP 中创建新本地范围的唯一方法:

function nested_loop($arr) {
    foreach($arr as $key => $value) {
        #do more stuff here
    }
}

foreach($someData as $key => $value) {    #same names, different variables
    #do stuff here

    nested_loop($value);
}
于 2013-05-31T17:27:41.190 回答