我意识到第二个避免了函数调用的开销(更新,实际上是一种语言结构),但知道一个是否比另一个更好会很有趣.我一直在使用unset()我的大部分编码,但我最近查看了一些在网上发现的可敬的类,$var = null而不是使用它.
有没有首选,是什么原因?
从一个随机的php.net帖子:
如果你正在做$ whatever = null; 那么你正在重写变量的数据.您可能会更快地释放/缩小内存,但它可能会更快地从真正需要它们的代码中窃取CPU周期,从而导致更长的总体执行时间.
显然这是无可争议的事实,所以也许有人会如此善良地解释.
我的意思是,什么,unset神奇地没有执行任何汇编指令,$whatever = null;而是?如上所述,答案和说法一样有用
$ whatever = null重置缓冲区和L1缓存,而unset清除缓冲区并重置L2缓存.
Techno mumbo jumbo并不构成答案.
php ×2