PHP memory limit - странное поведение скрипта

skachko

Новичок
PHP memory limit - странное поведение скрипта

PHP memory limit на хостинге выпросил 64Mb, до этого было 32Mb и всё работало с небольшыми файлами, но теперь понадобилось работать с большими. После того как увеличили память, сразу перестало всё работать и валится такая ошибка. Вернули 32Mb, опять всё заработало!!! Опять 64 - не работает, вернули 32 - работает. Вот так выглядит ошибка при установке 64Мб:

PHP:
Fatal error: Allowed memory size of 262144 bytes exhausted (tried to allocate 30084 bytes) in /home/ххххх/public_html/includes/php_functions.php on line 3
Это строка 3 содержит всего лишь include_once "utf8.php";

Проверил память прям перед этой строкой:

PHP:
echo ("memory limit: " . ini_get("memory_limit") . "<br />");
echo ("memory usage: " . round(memory_get_usage(true)/1048576,2) . "Mb (" . memory_get_usage(true) . " bytes)<br />");
include_once "utf8.php";
И получил вот что:

PHP:
memory limit: 64MB
memory usage: 0.25Mb (262144 bytes)

Fatal error: Allowed memory size of 262144 bytes exhausted (tried to allocate 30084 bytes) in /home/wallpape/public_html/includes/php_functions.php on line 5
Сейчас ошибка так и висит . :( Что делать ума не приложу. Хостинг буржуйский, общаться с ними тяжело в силу не очень свободного английского.

-~{}~ 27.09.10 16:59:

Вопрос вот в чем, почему он пытается обратиться к 0.25Mb памяти, а не к 64мб? почему видит что доступно лишь 0.25Mb?!?!

Повторюсь, при возврате к 32Мб все опять работает. :(
 

skachko

Новичок
Спасибо, мне друг уже подсказал. Написал им пару слов. :)

-~{}~ 27.09.10 17:18:

А что такое "MB" тогда? Мегабиты? Или PHP это вообще игнорирует и какой-то минилимит свой дефолтный ставит 256 килобайт?
 
Сверху