ついに私は解決策を見つけることができました。 PHPコレクションのガベージがいっぱいになると、それを解放する方法がないことがわかりました。 Unset
およびgc_collect_cycles()
また、効果的ではありません。唯一の方法は、Function
を使用することです コードのさまざまなセクションで。私の場合、forループに大きなスクリプトがあったので、すべてのコードを関数にコピーし、ループで関数を呼び出しました。関数が静止するたびに、メモリが解放されます。 memory_get_usage()
を追加してテストできます 関数に1回、関数から1回出て、違いを確認します。