哪个对于清除数组中的所有值更有效?第一个需要我每次在第二个示例的循环中使用该函数。
foreach ($array as $i => $value) {
unset($array[$i]);
}
Or this
foreach($blah_blah as $blah) {
$foo = array();
//do something
$foo = null;
}
我不想用unset()
因为这会删除变量。
就像扎克在下面的评论中所说的那样,您可以使用简单地重新实例化它
$foo = array(); // $foo is still here
如果您想要更强大的功能,请使用 unset ,因为它还会从符号表中清除 $foo ,如果稍后需要该数组,只需再次实例化它即可。
unset($foo); // $foo is gone
$foo = array(); // $foo is here again
如果我们谈论的是非常大的桌子,我可能会推荐
$foo = null;
unset($foo);
因为这也会更好地清除记忆。然而,这种行为 (GC) 并不是很恒定,并且可能会随着 PHP 版本的不同而改变。请记住,重新实例化结构与清空结构不同。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)