Which is more efficient for clearing all values in an array? The first one would require me to use that function each time in the loop of the second example.
foreach ($array as $i => $value) {
unset($array[$i]);
}
Or this
foreach($blah_blah as $blah) {
$foo = array();
//do something
$foo = null;
}
I don’t want to use unset() because that deletes the variable.
Like Zack said in the comments below you are able to simply re-instantiate it using
If you want something more powerful use unset since it also will clear $foo from the symbol table, if you need the array later on just instantiate it again.
If we are talking about very large tables I’d probably recommend
since that also would clear the memory a bit better. That behavior (GC) is however not very constant and may change over PHP versions. Bear in mind that re-instantiating a structure is not the same as emptying it.