fopen() buffer size.

physh

поедатель запятых
fopen() buffer size.

пытаюсь через php закатить файл размером где-то в 10 мб в Mysql...
но чего-то не пойму
Fatal error: Allowed memory size of 8388608 bytes exhausted (tried to allocate 1025 bytes) in /bla/bla/asdf.php on line 25
Тобиш, наш 8й мегабайт килобайтиком скушали. А как? мы ж по килобайтику?

PHP:
$open = fopen( $filename, 'rb' );
$buffer_size=1024 
$open_data = array();
$line=0;
while( !feof($open) ){
            $open_data[$line] = fgets($open, $buffer_size);
            $line++;
}
fclose($open);
 

SiMM

Новичок
> Fatal error: Allowed memory size of 8388608 bytes exhausted (tried to allocate 1025 bytes) in /bla/bla/asdf.php on line 25
http://translate.ru

> Тобиш, наш 8й мегабайт килобайтиком скушали. А как? мы ж по килобайтику?
Да. По килобайтику. Только вот 8*1024*1024 - уже 8 Мб получается.
 

Фанат

oncle terrible
Команда форума
как интересно!
и где же у тебя тут garbage, который ты собрался collect?
 

chisto_tolyan

Враг народа
А зачем 10 МБ загонять в мускул, таким образом?
INSERT DATA FROM FILE?
если нет, то разбить файл на несколько и кроном их кроном!)
 

Фанат

oncle terrible
Команда форума
вопрос, НАФИГА ВООБЩЕ пихать в базу такой файл, мы пока оставим в стороне.

тут пока гораздо более интересная тема - чувак черпает ложкой воду в ведро и при этом полагает, что ведро постоянно пустое! что полная у него только ложка.
и с таким удивлением смотри на переливающуюся из ведра воду - "а откуда тут это взялось???"
 

physh

поедатель запятых
НАФИГА - чтобы пользоваться... тыпредлагаешь пользоваться 10 мб .txt?

>тут пока гораздо более интересная тема - чувак черпает ложкой воду в ведро и при этом полагает, что ведро постоянно пустое!

т.е. на русском, array который я создаю очень большой и из-за него-то и переполняется? понял. интнресно, а если я вызову мускуль много-много раз то там ничего не заругается(если даже со sleep каждые 10 тыс записей)?
 

Фанат

oncle terrible
Команда форума
тыпредлагаешь пользоваться 10 мб .txt?
я ничего не предлагаю.
предлагать можно, только если точно знать, что человек делает.
а когда всей информации - "пихаю бегемота в мускуль", то предложить можно только попить пивка.
 

physh

поедатель запятых
предлагать можно, только если точно знать, что человек делает
"бегемот" = текстовый файл. сразу в мускл нельза из-за того что его надо преобразовать.
 

Фанат

oncle terrible
Команда форума
не весь же файл, а каждую строку в отдельности?
вот сразу и записывай
 

physh

поедатель запятых
>вот сразу и записывай

сейчас попробую.

>в каком формате данные в текстовом файле храняться?
в кавычках через запятую. в конце \n
 
Сверху