Home » PHP Tips » Fatal error: Allowed memory size of …

Fatal error: Allowed memory size of …

Если при загрузке файлов у вас появляется ошибка:

Fatal error: Allowed memory size of…

… Хотя у вас стоит лимит на 256Мб, а картинка весит не больше 10Мб…

Или же ошибка 404, то скорее всего проблема в том, что Вы пытаетесь загрузить картинку высокого разрешения.

Например, при ресайзинге картинки разрешением 1000px на 1000px, скрипт может использовать около 4мб памяти, т.к. 1 пиксель весит 4 байта.

Если картинка 8000px на 8000px, то потребуется примерно 256Мб. Не каждый сервер позволит такой расход памяти.

Единственное решение (за исключением увеличения лимита памяти) это лимитировать разрешение картинки.

Можно сделать так:

$res = getimagesize($_FILES['file']['tmp_name']);
if ( $res[0] > 2000 || $res[1] > 2000 ) {
$message = 'Image resolution should be not bigger than 2000x2000 pixels';
...
}

Ну а в поддержку проекта смотрим: Электроника со скидками

This entry was posted in PHP Tips and tagged ,
  • Антон

    Спасибки, всё стало на свои места