if((memory_get_usage() / 1024 /1024) < 70)
Я просто делю memory_get_usage на 1024 в квадрате, чтобы сравнить его с «нормальным» значением в мегабайтах «70».
Я столкнулся с проблемами памяти с php внутри цикла for и написал это простое выражение if, чтобы не допустить фатальной ошибки в моем скрипте. Кроме того, сервер, на котором я работал, не позволял мне изменять лимит памяти (это часто бывает в некоторых облачных предложениях, таких как openshift или большие веб-хосты, такие как dreamhost). Я действительно не заметил каких-либо серьезных снижений производительности ( в php 5.3, которая может обрабатывать такие функции, немного иначе, чем php 4.x или 5.x ... во всяком случае, влияние на производительность скрипта, приводящего к фатальной ошибке, перевешивает любые накладные расходы, которые может вызвать вызов функции. Сценарий безудержного использования всех доступных оперативных памяти.
Многие могут поспорить; о, эй, ваше программное обеспечение не оптимизировано. Да. Возможно Вы правы; но со сложными наборами данных вы можете только снизить производительность, прежде чем вам понадобится больше памяти; и поиск ошибок памяти в потоке ajax может быть очень неприятным; особенно если вы не уверены, где находятся ваши файлы журналов.