在PHP程序中,我按顺序读取一堆文件(带file_get_contents),gzdecode它们,json_decode结果,分析内容,抛出大部分文件,并在数组中存储大约1%.
不幸的是,随着每次迭代(我遍历包含文件名的数组),似乎有一些内存丢失(根据memory_get_peak_usage,每次大约2-10 MB).我对我的代码进行了双重和三重检查; 我没有在循环中存储不需要的数据(并且所需的数据总体上不超过大约10MB),但我经常重写(实际上,数组中的字符串).显然,PHP没有正确释放内存,因此使用越来越多的RAM直到它达到极限.
有没有办法强制垃圾收集?或者,至少,找出内存的使用位置?