Случилось так, что потребовалось мне передавать результаты запроса в csv-файлы. Вроде ничего сложного, но столкнулся с этим я впервые и, как оказалось, информации в интернете много, но не вся подходит. Поэтому и решил написать эту заметку в блокнот.
Собственно пример:
$file = '/tmp/stats.csv'; $result = mysql_query("SELECT * FROM managers") ob_start(); $csv = fopen($file, 'w'); while($row = mysql_fetch_assoc($result)) { fputcsv($csv, $row, ';'); } fclose($csv); ob_get_clean();
Название папки и файла написано для примера.
Еще одно важное замечание… Для корректного отображения файла в него нужно писать в кодировке cp1251, иначе будут каракули, если БД отдает в другой кодировке (исключение — латинские символы).
26 февраля, 2013