在 php 中取消设置变量可能会影响缓存


Could unsetting variables in php affect caching?

也许这是一个愚蠢的问题,但是在我的页面末尾,我将所有变量设置为 null,然后取消设置它们,以提高性能,即使我知道它可能对性能几乎没有影响,但即便如此,这对任何缓存模块是否有任何影响,例如 , 清漆, APC, 还是内存缓存?

除了(也许)垃圾回收之外,它不会影响任何东西。看看APC是如何工作的。大多数其他缓存插件的工作方式相同。

你会注意到像APC这样的缓存器(顺便说一下,memcached与这个问题无关 - Varnish也没有)仍然解析所有PHP。取消设置变量可能做的唯一事情就是导致垃圾收集器启动。如果 GC 启动,您可能会看到速度变慢(然后是加速)。话虽如此,但并不是很确定。通常PHP在垃圾收集方面非常好,所以你不应该担心它,除非你试图模拟某种RAII行为。

Varnish是一个HTTP加速器(与PHP无关)。 memcached 是一个基于分布式内存的信息存储(也与 PHP 的内部工作无关)。