一旦垃圾收集器认为有必要,变量通常会被销毁,并且它们占用的内存会被释放。基本上,在当前执行的脚本完成后不久,是吗?
现在,我对 Ajax 检索变量的生命周期感兴趣。
由于变量通常在它们运行的脚本完成后被清除,也就是说,在页面重新加载时,Ajax 是否也属于这一类?如果我有一个从 PHP 接收胖 JSON 数组的脚本,并且在我使用完之后只清除带有“arrayVar = null”的 JS 变量,这就足够了吗?或者我应该取消设置创建返回数组的 PHP 变量吗?例如:
// PHP CODE
<?
public function some_kind_of_ajax_called_action() {
$someClass = new MyClass();
$someArray = $someClass->getRequestedData();
$arrayForReturning = array();
foreach ($someArray as $element) {
($currentUser == "admin")?($arrayForReturning[] = $element):null;
}
die(json_encode($arrayForReturning));
}
?>
最好包括...
unset($someClass);
unset($someArray);
...在 die() 调用之前?这会节省内存,不管多少?
干杯