如果我取消设置数组,它的元素是垃圾收集还是释放,假设它们没有被其他地方引用?如果我只是做$ array = new array();
$array = array('a'=>1);
//method 1 to clear array
unset($array);
方法2清除数组
$array = array('a'=>1);
//method 2 to clear array
$array y = array();
以下简单的代码回答了问题:
$a = array();
$a[0] = 'a1';
$a[1] = 'b2';
foreach($a as $v)
echo $v . '<br />';
//writes content of array
echo count($a) . '<br />';
//writes 2
$a = array(); //CLEAR ARRAY
foreach($a as $v)
echo $v . '<br />';
//writes nothing
echo count($a) . '<br />';
//writes 0
Run Code Online (Sandbox Code Playgroud)
检查php < 5.3 垃圾收集,是否需要将数组值设置为 null,或者设置 array = null 是否会孤立其所有元素?,也许这将有助于回答你的问题。