Przeprowadziłem małe testy dwóch sposobów zwalniania zasobów i czasu który zajmuje taki proces. Czytałem na kilku portalach czy powinno się unsetować zmienne czy nullować. Wiele komentarzy polegało na sprzeczaniu się która operacja trwa dużej i jest bardziej pamięciożerna. Nie będę oceniał co jest bardzie przydatne czy w jaki sposób powinno się to robić. Wszystko zależy od tego w jakiej sytuacji się znajdujemy i które zasoby są dla nas kluczowe.
Podczas zmieniania wartości zmiennej $foo = null; uzyskasz efekt szybszego zwolnienia pamięci RAM, ale zabierze to kilka cykli procesora, co może znacząco wydłużyć czas realizacji zadania. Funkcja unset() natomiast nie zwolni pamięci RAM natychmiastowo, jednak nie obciąży on w żaden sposób procesora. W celu zobrazowania problemu przygotowałem prosty skrypt z jedną pętlą. Test polega na szybkim tworzeniu i zwalnianiu zmiennej tekstowej oraz na ciągłym dopisywaniu do istniejącej zmiennej kolejnych linii tekstu. Każdy test da nam 2 wyniki zajętości pamięci.