在PHP中清除和定义数组

时间:2012-10-07 21:58:45

标签: php

我在for循环中定义了一个数组。像

这样的东西
for($i=0;$i<5;$i++){
    $an_array = array();
}

请知道数组定义是否也会在第一次迭代后清除数组。

3 个答案:

答案 0 :(得分:1)

是的,每次都会清除阵列。 你可以每次创建独特的数组,如果那就是你需要的。

 for($i=0;$i<5;$i++){
    $an_array[$i] = array();
 }

答案 1 :(得分:0)

是的。 $ arr = array(); 这使变量成为空数组。 如果要添加定义了键的元素,最简单的方法是, $ arr [] ='我的数据'; 在for循环中使用上面的代码并设置$ arr = array();上面的循环。这不是必需的,但建议。

您还可以添加以下数据: for($ i = 0; $ i&lt; 5; ++ $ i){  $ arr [$ i] ='我的数据'; }

for循环后, $ arr不会被清除。

答案 2 :(得分:0)

我不确定这里要问的是什么,或者你想要完成什么,但是在循环中定义的任何变量将不再在每次迭代开始时定义。

尝试:

for($i=0;$i<5;$i++){
    var_dump($an_array);
    $an_array = array();
    array_push($an_array, $i);
    var_dump($an_array);
}
var_dump($an_array);

如果您尝试使用循环填充此数组,则需要在进入循环之前定义数组,如下所示:

 $an_array = array();
for($i=0;$i<5;$i++){
    array_push($an_array, $i);
}
var_dump($an_array);