Allowed memory size

Ralph

Дикий столяр
Allowed memory size

Добрый день.По мере написания скрипта самая вроде безобидная строка else {$GROUP[$index]['users'][$i]=$a;$GROUP ['users'][$index][$i]=$a;} начала вызывать Allowed memory size of 16M....Изменил значение на 24M-результат тот же.Подскажите пожалуйста,как отследить,какая часть скрипта так жрет память ? Из библиотек используется,пожалуй,только session,никакие GD и прочие не используются.
 

Крот

Новичок
1. Может быть ты нагенерил массив $GROUP такого размера, что он в память не помещается, такое вполне может быть... Проверить можно достаточно просто. Делаешь echo number_format(memory_get_usage()) до того, как образовывается массив и после того, как он записался в память и сверяешь результаты (правда для этого теста придется слегка увеличить allowed_memory_size).

2. Может быть ты из базы делаешь какой-нибудь SELECT * FROM ... и он у тебя всю память сжирает? Такое может быть вполне - решается постраничной разбивкой и получением только нужных данных , а не *.

Удачи!
 
Сверху