Я получаю сообщение об ошибке при запуске сценария PHP ....
Fatal error: Out of memory (allocated 1827405824) (tried to allocate 88800 bytes)
Я добавил эту строку в мой PHP-скрипт ..
ini_set("memory_limit","3000M");
Это утверждение, похоже, правильно контролирует использование памяти, но мне кажется, что я не могу получить его выше около 1,8 ГБ.
Как будто верхний предел памяти ограничен где-то еще.
Я также добавил в php.ini ...
memory_limit = 3000M
Кто-нибудь знает, ограничена ли память в другом месте?
Я использую локальный сервер с Xampp.
У меня Windows 7, 64-битная с 4 ГБ оперативной памяти.
Мой скрипт использует библиотеку изображений GD от PHP, и я получаю сообщение об ошибке при попытке выделить ссылку на изображение с помощью ImageCreateTrueColor ().
(Я знаю, что это огромный объем памяти - но это всего лишь один сценарий, и сделать это намного проще).
Спасибо.
Обновление ....
@ неуловимый @Orbling
Я ожидаю, что всем скучно с этим вопросом, но вот упрощенный код, иллюстрирующий проблему.
<?php
ini_set("memory_limit","4000000000");
echo "ini_get = " . ini_get('memory_limit') . "<br>\n";
echo "memory_get_usage = " . memory_get_usage(true) . "<br>\n";
$bigImageHandle = imagecreatetruecolor(22200, 24800); //this is line 5
?>
Вывод из браузера ...
ini_get = 4000000000
memory_get_usage = 524288
Fatal error: Out of memory (allocated 1843396608) (tried to allocate 88800 bytes) in
E:\User\My_Webs\experiments\houseshunting\temp\osMaps\t1.php on line 5
Я проверил это с меньшим набором плиток и памятью, используемой imagecreatetruecolor (), и мне нужно 2,7 ГБ