我是否应该在每次完成处理变量时使用 PHP 的 unset 函数


Shall I use PHP's unset function every time I am done working with variables?

我的问题非常简单,我从数据库中获取数据并将它们存储为变量以备将来使用。处理完变量后,使用 PHP 的 unset 函数释放内存是否划算?我所说的"成本效益"是指是否值得多次调用该函数,以期清除内存以减少页面加载时间。

如未设置中所述

从这里

"unset() 就像它的名字所说的那样 - 取消设置一个变量。它不会强制立即释放内存。PHP 的垃圾收集器会在它认为合适的时候这样做 - 有意尽快,因为无论如何都不需要这些 CPU 周期,或者最晚在脚本耗尽内存之前,无论先发生什么。

如果你正在执行 $whatever = null;那么你正在重写变量的数据。您可能会更快地释放/缩小内存,但它可能会更快地从真正需要它们的代码中窃取 CPU 周期,从而导致更长的整体执行时间。

在处理大量数据时(如处理数组)时使用 unset。

除非对不同的值使用相同的变量名称,否则您实际上不需要多次调用该函数 - 我不建议这样做。

未设置($variable 1, $variable 2, $variable 3)

我在循环结束时使用 unset,并在代码末尾取消设置数组。

除非我真的

必须这样做,否则我真的不需要使用 unset - 在这里再次循环以获得已知的 php 怪异 - 或者我有非常大的数组。