Stačí použít fputcsv stará se o escapování a vytváření správných csv dat.
<?php
$list = array (
array('aaa', 'bbb', 'ccc', 'dddd'),
array('123', '456', '789'),
array('"aaa"', '"bbb"')
);
$fp = fopen('file.csv', 'w');
foreach ($list as $fields) {
fputcsv($fp, $fields);
}
fclose($fp);
?>
Výstup:
aaa,bbb,ccc,dddd
123,456,789
"""aaa""","""bbb"""
Upravit
Vždy můžete použít kombinaci tmpfile Chcete-li otevřít soubor, který bude na konci požadavku automaticky smazán, napište do něj a po vytvoření zprávy vytiskněte její obsah pomocí fread . Musíte použít fread, protože tmpfile vrací zdroj, jinak můžete použít tempnam + file_get_contents ale v tom případě musíte soubor otevřít a poté, co si jej přečtete, sami jej vyčistit.