Возможный дубликат:
Допустимый размер памяти 33554432 байт исчерпан (пытался выделить 43148176 байт) в php
Я видел подобные проблемы здесь, но мой совсем другой. Я читаю из базы данных и пишу в XML-файл. Я получаю эту ошибку
<b>Fatal error</b>: Allowed memory size of 67108864 bytes exhausted (tried to allocate 4459414 bytes) in <b>.../public/home/..</b> on line <b>32</b><br />.
Каким должно быть решение? Увеличивать объем памяти в коде? Любая помощь?
Сделайте mysql_unbuffered_query()
а не mysql_query()
. Вероятно, ваш запрос возвращает слишком много данных, как и для вашего php-сервера.
Попробуйте увеличить или удалить memory_limit в php.ini
.
Найдите что-то вроде этого и измените значение memory_limit
; Maximum amount of memory a script may consume (128MB) ; http://php.net/memory-limit memory_limit = 128M
(это часть моего php.ini)
Перезагрузите сервер после сохранения изменений.
Кроме того, вы можете попытаться удалить лимит из кода.
Пример:
ini_set('memory_limit', '-1');
Это должно работать нормально.
Другой способ – установить ограничение памяти из файла .htaccess , добавив строку:
php_value memory_limit 128M
(128M – всего лишь пример)
Примечание. Для совместного использования я очень сомневаюсь, что вы можете изменить ограничение памяти.