Недавно был большой спор тут на тостере про утечки памяти в ПХП. На сколько я долго работаю с пыхом и жаваскриптом, могу сказать, что утечки памяти в пхп — это крайне редкое явление на данный момент за счёт грамотно построенного механизма внутренних ссылок и gc, в основном это корявость допмодулей.
Оставлю этот код для того юзернейма, который спорил.
<?php
$theThing = null;
$replaceThing = function () use (&$theThing) {
$priorThing = $theThing;
$unused = function () {
// 'unused' - единственное место, где используется 'priorThing',
// но 'unused' никогда не вызывается
if ($priorThing) {
echo "hi\n";
}
};
$theThing = (object)[];
$theThing->longStr = join("*",(new SplFixedArray(1000000))->toArray());
$theThing->someMethod = function () {
echo "$someMessage\n";
};
};
while(1)
{
sleep(1);
$replaceThing();
}