Finalmente sono riuscito a trovare la soluzione. Ho scoperto che quando la spazzatura della raccolta PHP si sta riempiendo, non c'è modo di liberarla. Unset
e gc_collect_cycles()
inoltre non sono efficaci. L'unico modo è utilizzare Function
su diverse sezioni di codici. Nel mio caso, avevo un grosso script in un ciclo for, quindi ho copiato tutti i miei codici in una funzione e nel mio ciclo chiamo la funzione. Ogni volta che la funzione si interrompe, la memoria si libera. Puoi testarlo aggiungendo memory_get_usage()
una volta nella tua funzione e una volta fuori dalla funzione per vedere la differenza.