Не выгружаются полностью записи из базы данных в csv файл

Есть скрипт.

header('Content-Encoding: UTF-8');
header('Content-type: text/csv; charset=UTF-8');
header('Content-Disposition: attachment; filename=Contacts.csv');
// set_time_limit(0);
// подключаем файл с паролями
require_once './connect.php';
// подключаемся к серверу
$link = mysqli_connect($host, $user, $password, $db)
    or die("Ошибка " . mysqli_error($link));
// выполняем операции с базой данных
$query =<<<EOT
SELECT 
 ...
FROM 
 ...
WHERE 
 ...
EOT;
$result = mysqli_query($link,$query) or die("Ошибка " . mysqli_error($link));

$fp = fopen('php://output', 'w');  // Открываем поток для записи
    while($row = $result->fetch_assoc()) {  // Перебираем строки
        fputcsv($fp, $row, ";");  // Записываем строки в поток
    }

mysqli_close($link);

Запрос отдает примерно 560к строчек, но в файл csv пишется только 206к? Как исправить?


Ответы (1 шт):

Автор решения: nonadminus

Сработало после добавления в файл

ini_set('memory_limit', '512M');
→ Ссылка