Я пытаюсь эффективно записать большой объем данных в файл (я относительно новичок в PHP) в устаревшей системе в файл, не убивая память.За один раз пишет всего 50 клиентов, но через некоторое время он значительно замедляется, поэтому я предполагаю, что он сохраняет весь файл в памяти.Любые идеи, как я могу просто добавить в файл и справиться с размером файла становится очень большим?Фрагмент кода ниже.Примечание: я застрял с PHP 5.3.
do{
//Tell the collection which page to load.
$collection->setCurPage($currentPage);
$collection->load();
$fp = fopen(Mage::getBaseDir('export') .'/customers.json', 'a');
foreach ($collection as $customer){
//write collection as json
fwrite($fp, "," . json_encode($customer->getData()));
$customerCount++;
}
fclose($fp);
$currentPage++;
//make the collection unload the data in memory so it will pick up the next page when load() is called.
$collection->clear();
echo memory_get_usage() . "\n";
echo "Finished page $currentPage of $pages \n";
} while ($currentPage <= $pages);