【发布时间】:2016-12-23 11:21:35
【问题描述】:
我有一段代码遍历团队记录的所有相关个人资料记录 (HAS_MANY)。
看起来像这样:
$team = Team::model()->findByPk(1);
$score = 0;
foreach ($team->profiles as $profile) {
$score += $profile->getScore();
}
现在我需要保留 $team 变量,但由于循环,所有配置文件都将保留在 profiles 属性中,并占用大量内存。
有没有办法安全地清理它?
我想过将profiles设置为null,但显然它仍然为空(我不知道稍后是否需要另一段代码访问profiles)
【问题讨论】:
-
所以您想保留
$team变量,同时又不想保留,因为它占用大量内存?如果是这种情况,我会一一取消设置,如果需要,只需再次从数据库中获取它们。或者将它们存储在某种临时文件中。不要认为我认为还有其他方法。 -
不,不。我需要保留
$team变量,但我可能不需要保留profiles属性。至少,不是针对将使用的每条$team记录。
标签: php yii memory-leaks