Ciao,
è più facile di quanto si possa immaginare.
Utilizza una variabile $content che conterrà il testo.
Se vuoi come prima riga i nomi dei campi la variabile $content sarà definita così:
Codice PHP:
$content = "NOME;COGNOME;TEL\n";
Cicla il record del tuo db e con l'utilizzo di .= concatena la variabile $content e aggiungi i dati che provengono dal recordset. Alla fine del record ricordati di aggiungere il "\n" che chiude il record nel CSV.
Una volta concluso il ciclo cambia l'header del file php nel modo che vedi qui sotto.
Codice PHP:
<?php
header("Content-type: application/octet-stream");
header("Content-Disposition: attachment; filename=\"my-data.csv\"");
echo $content;
?>