.comment { color: gray; } .keyword { font-weight: bold; } .html .atribute .value { color: green; }

пятница, 22 мая 2009 г.

PHP Error - Allowed memory size of X bytes exhausted (tried to allocate Y bytes)

Наверняка многие кто хостится даже на платных серверах и не имеющий доступ к файлу настроек php.ini, встречали такую ошибку при отработке прожорливых php скриптов. Я пытался поначалу бороться с этим недугом созданием файла php.ini со своими настройками в корне папки с исполняемым скриптом (у некоторых хостеров это возможно). Но работало это через раз, а то и вообще...
Нашел решение проблемы здесь, спасибо большое товарищу Jason'у !

Ошибка "Allowed memory size of X bytes exhausted (tried to allocate Y bytes)" - говорит о том что вашему скрипту не хватает памяти, точнее скрипт не укладывается в тот обьем памяти который разрешен для выполнения PHP скриптами.

В таких случаях обычно помогает изменение настроек, выберите подходящий:

memory_limit = 12M - опция в вашем php.ini файле (рекомендуется если есть доступ, действует на все скрипты на сервере)
ini_set('memory_limit', '12M'); - php-код в начале проблемных скриптов.
php_value memory_limit 12M - опция в .htaccess файле той папки в которой запускается скрипт.

Вместо 12M подставляем необходимый обьем памяти, например по нарастающей, пока ошбка не перестанет вылазить, значение по умолчанию обычно 8M (мегабайт).

Я выбрал второй способ - добавлял в начале кода
ini_set('memory_limit', 'ХM');

, где Х - желаемое количество памяти.

Комментариев нет:

Отправить комментарий