Горячий, чтобы решить эту проблему и почему это происходит?
Zend Server Log:
PHP Неустранимая ошибка: разрешенный размер памяти 134217728 байт исчерпан (пытался выделить 538798977 байт) в C: \ Program Files (x86) \ Zend \ Apache2 \ htdocs \ test \ modules \ main.php в строке 3
Файл main.php
не производит никаких ошибок, если он выполняется непосредственно из браузера. Однако, если я использую его функции из другого файла PHO, Zend Log печатает вышеупомянутую ошибку.
Я также столкнулся с этой проблемой.
Увеличьте следующие переменные, чтобы не остановить выполнение страницы:
max_input_time
memory_limit
max_execution_time
Либо увеличьте ограничение памяти в php.ini
, либо попытайтесь оптимизировать любые большие структуры данных (например, массивы) из вашего приложения.
В любом случае, если ваше приложение PHP использует 128 МБ ОЗУ, возможно, что-то не так.
Кроме того, как отмечает Fluffeh в комментариях, что вы делаете, чтобы использовать 500 МБ ОЗУ?
Попробуй это:
ini_set('memory_limit', '-1');
php.net/memory_limit
Это займет неограниченное использование памяти сервером.
В дополнение к user1427811 вы можете отслеживать time_limit
и memory_limit
до и после загрузки файла:
function custom_put_contents($source_url='',$local_path=''){ $time_limit = ini_get('max_execution_time'); $memory_limit = ini_get('memory_limit'); set_time_limit(0); ini_set('memory_limit', '-1'); $remote_contents=file_get_contents($source_url); $response=file_put_contents($local_path, $remote_contents); set_time_limit($time_limit); ini_set('memory_limit', $memory_limit); return $response; }