Bazı siteleri tarar bir örümcek oluşturmak için (benim ORM olarak Doctrine ile) Symfony çerçeve ile PHP kullanıyorum.
Benim sorunum aşağıdaki kod, bir bellek sızıntısı oluşturur:
$q = $this -> createQuery('Product p');
if($store) {
$q
-> andWhere('p.store_id = ?', $store -> getId())
-> limit(1);
}
$q -> andWhere('p.name = ?', $name);
$data = $q -> execute();
$q -> free(true);
$data -> free(true);
return NULL;
Bu kod Doctrine_Table
bir alt yerleştirilir. Ben kısmını yürütmek (ve tabii $data -> free(true)
) kaçak durur açıklama. Bu Doctrine_Collection
bu sızıntısına neden olan bu sonuca götürdü etti.