当我将变量均衡为Array()时,PHP是否清空我的数组

时间:2012-09-06 10:42:29

标签: php optimization

我的问题是,

我有一个变量,它包含一个元素列表 - 即。索引数组。

var $myarr;
//added smt. to array..

...

$myarr = Array();

myarr的元素去了哪里? 哪一个最好,高于还是低于? 在均衡Array()之前我应该​​等于NULL吗?

var $myarr;
//added smt. to array..

...
$myarr = NULL;
$myarr = Array();

2 个答案:

答案 0 :(得分:5)

$myarr = Array()会将变量$myarr的值设置为空数组。无论以前是什么都没关系,无论它现在消失了*。首先将$myarr设置为null没有区别,这只是一个(无意义)步骤。它没有改变任何结果。

*或者至少会很快收集垃圾

答案 1 :(得分:1)

  

myarr的元素在哪里?

他们迷路了。使用的内存空间将被新数组覆盖或由垃圾收集器转换为可用空间。

  

哪一个最好,高于或低于?

使用第一个。你不需要那个额外的步骤。结果是平等的。

  

在均衡Array()之前我应该​​等于NULL吗?

你不需要。

如果您想控制垃圾收集器,请查看:
http://www.php.net/manual/en/features.gc.performance-considerations.php
http://www.php.net/manual/en/features.gc.collecting-cycles.php