Как сохранить данные из MySQL в CSV через PHP?

V
На сайте с 04.06.2014
Offline
54
1424

Есть база данных MySQL с одной таблицей с 10 столбцами. В таблице 1000+ записей. Как можно сохранить эту таблицу в CSV через PHP? Например, нажали кнопку на определенной странице сайта и файл CSV начал загрузку на компьютер.

Партнёрка №1 в essay-нише (https://goo.gl/YfTPtG)
дани мапов
На сайте с 06.09.2012
Offline
204
#1

Попробуйте эти варианты решения http://stackoverflow.com/questions/125113/php-code-to-convert-a-mysql-query-to-csv

Написание и доработка скриптов (PHP, MySQL, JavaScript, jQuery) (/ru/forum/811046)
PN
На сайте с 22.08.2012
Offline
103
#2


header('Content-Type: text/csv');
header('Content-Disposition: attachment; filename="export.csv"');
header('Pragma: no-cache');
header('Expires: 0');
$res = mysql_query("SELECT * FROM table");
while ($row = mysql_fetch_row($res))
{
foreach ($row as &$v)
$v = str_replace("\"", "\"\"", $v);
unset($v);
echo "\"" . implode("\";\"", $row) . "\"\r\n";
}
Мой совет помог? Не скупись! Bitcoin 1Lseddet1o1B6odgXQHbGaWGwRkt1Db8Ef Ethereum 0x450f1a17461e25194B7F9226cDEe70173F39e1e1
IW
На сайте с 16.12.2014
Offline
73
#3
victorpavloff:
Как можно сохранить эту таблицу в CSV через PHP?

Можно создать еще пару топиков, или сделать импорт в phpmyadmin, или фрилансера уже найти, других вариантов нет.

SSD VPS скидка 25% по купону iwork https://cp.inferno.name/cart.php?gid=23 | надежный хостинг http://bit.ly/2Yiq93h
W
На сайте с 09.04.2013
Offline
46
#4

Есть отличная библиотека - http://csv.thephpleague.com/

Пользоваться очень просто:


<?php
require_once 'vendor/autoload.php';
use League\Csv\Writer;
$dbh = new PDO('mysql:host=localhost;dbname=DB;charset=UTF8', 'USERNAME', 'PASSWORD');
$sth = $dbh->prepare(
"SELECT name,price,description FROM products"
);
$sth->setFetchMode(PDO::FETCH_ASSOC);
$sth->execute();
$csv = Writer::createFromFileObject(new SplTempFileObject());
$csv->insertOne(['name', 'price','description']);
$csv->insertAll($sth);
$csv->output('products.csv');
die;

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий