在PHP 5.3.28中没有清理的静态函数缓存?

时间:2014-12-20 07:26:57

标签: php wordpress memory-leaks simplepie

我正在使用SimplePie和PHP 5.2.17通过WordPress插件feedwordpress解析我的RSS提要。如果我确保将this patch用于simplepie(在IRI.php文件中),这样可以正常工作并且没有问题。

但是,如果我将PHP更改为使用版本5.3.28 - 内存泄漏(或其他一些内存泄漏)启动并且我的站点崩溃。知道可能导致它的原因/如何解决它?

(换句话说,是否有理由this patch应该在5.2中工作而不是在PHP 5.3中?)

感谢。

1 个答案:

答案 0 :(得分:6)

PHP 5.3并不完全向后兼容PHP 5.2,

在您的情况下,使用clearstatcache()可能是内存泄漏的原因。

正如您在Migrating from PHP 5.2.x to PHP 5.3.x文档中所看到的那样:

  

clearstatcache()默认情况下不再清除realpath缓存。

explicitly$clear_realpath_cache参数设置为true

可修复此问题
clearstatcache(true)