Память PHP исчерпана

Любые идеи, почему я получаю ….

Fatal error: Allowed memory size of 33554432 bytes exhausted (tried to 

выделить 9792 байта) в /home/frich/public_html/creation/systemc/sMain/upload_image.php в строке 77

на следующей строке

 $oldImage = imagecreatefromjpeg($img); 

Php захватывает изображение из HTML-формы и изменяет его размер.

Работает отлично, если его небольшой файл. Т.е. несколько сотен КБ

Пробовал с большим файлом, так как мне нужно максимум до 4 Мб. Изображение, с которым я получаю сообщение, – прим. 2mb

заранее спасибо

Вы получаете ошибку

 """""""""""""""""""""""" Fatal error: Allowed memory size of 33554432 bytes exhausted (tried to allocate 9792 bytes) in /home/frich/public_html/creation/systemc/sMain/upload_image.php on line 77 """""""""""""""""""""""" 

Он показывает, что либо вы используете общий хостинг, потому что ваш сервер memory_limit составляет 32 МБ

Вам нужно увеличить лимит памяти, как сказано выше, «Pekka» и «MartyIX»,

но как вы это делаете, есть три способа сделать это.

Первый. попросите свою хостинговую компанию увеличить лимит памяти,

они увеличат его до 48 МБ макс, что является ограничением для любой хостинговой компании для стрижки хостинга.

Второй. загрузить файл php.ini

с записанными "memory_limit = 100M и max_memory = 100M"

вы можете изменить 100M на любой размер, который вы хотите, но который может быть ограничен, чтобы он не использовал дополнительные ресурсы сервера, иначе ваша учетная запись может быть приостановлена ​​вашей хостинговой компанией

ОГРАНИЧЕНИЕ: этот вариант может не работать должным образом на каждом хостинге, поскольку иногда этот код может быть заблокирован администратором, чтобы ресурсы сервера могли потребляться в LIMIT.

3. Загрузите «.htaccess»

написанное внутри него "php_value memory_limit 32M"

или

по умолчанию он доступен в вашем веб-каталоге хостинга, после чего вы можете сначала загрузить его, так как он имеет другие настройки. скачайте его, откройте его с помощью блокнота и напишите «php_value memory_limit 32M»

а также

4-й вариант добавить PHP-код вашей страницы

"ini_set ('memory_limit', '32M');" (Я еще не проверял, может ли он работать нормально)

Спасибо и с уважением ……..

Изображение, которое вы пытаетесь обработать, слишком велико для ограничения памяти на 32 МБ вашего сценария.

Изменение размера изображения занимает не менее

 (width in pixels) x (height in pixels) x 3 (or 4) 

байты (по 1 байт для красного / зеленого / синего, возможно один дополнительный байт для прозрачности)

Вам необходимо увеличить параметр memory_limit на сервере или попросить администратора сделать это.

32MB – довольно приличная и общая ценность, однако – вам может быть не повезло, если вы находитесь на общедоступном хостинге.

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

В зависимости от вашей конфигурации php вы можете увеличить лимит памяти для скрипта с помощью ini_set (); Например,

 ini_set('memory_limit','16M'); 

Я использовал это в ряде случаев с задачами обработки изображений, хотя файлы размером 4 МБ представляют большую нагрузку для веб-сервера.