Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我的问题很简单,我从数据库中获取数据并将它们存储为变量以备将来使用。处理完变量后,使用 PHP 的 unset 函数来释放内存是否划算?我所说的“成本效益”是指是否值得多次调用该函数以希望清除内存以减少页面加载时间。
如未设置中所述
从这里
“unset() 就像它的名字所说的那样 - 取消设置一个变量。它不会强制立即释放内存。PHP 的垃圾收集器会在它认为合适时执行它 - 有意尽快,因为无论如何都不需要这些 CPU 周期,或者直到脚本内存不足,无论先发生什么。
如果你正在做 $whatever = null; 那么你正在重写变量的数据。您可能会更快地释放/缩小内存,但它可能会更快地从真正需要它们的代码中窃取 CPU 周期,从而导致更长的整体执行时间。”
在处理大量数据(例如处理数组)时使用 unset。
除非您对不同的值使用相同的变量名,否则您实际上并不需要多次调用该函数——我不建议这样做。
未设置($variable1,$variable2,$variable3)
我在循环末尾使用 unset 并在代码末尾取消设置数组。
我真的不需要使用 unset ,除非我真的必须 - 在这里再次循环以获取已知的 php 怪异 - 或者我有非常大的数组。