PHP析构函数| unset()VS覆盖对象

时间:2017-07-26 15:27:55

标签: php object memory destructor

我从这个smart-match operator ~~中了解到,在PHP中销毁对象的最佳方法是使用my @csv-files = dir.grep: *.extension.lc eq "csv"

我想知道如果我基本上在循环中使用相同的var我是否需要销毁该对象...

unset

这是否真的使用相同的内存,或者我在不知不觉中创建了一堆对象并且没有销毁它们?

1 个答案:

答案 0 :(得分:2)

如果没有左边的变量引用一个对象,它最终会被垃圾收集。出于这个目的,无论你是unset变量还是简单地为它们分配其他东西,它们都会停止引用该对象,这是无关紧要的。

IMO你应该很少使用unset,你应该编写小函数,这些函数会在返回时自动丢弃其范围内的所有变量,这意味着事情会更快地自动收集垃圾比以后你不必担心它。