crea un file CSV per il download dal nostro cliente utilizzandoCome posso modificare le terminazioni di linea utilizzate da fputcsv?
$output = fopen('php://output', 'w');
e utilizzando fputcsv()
per scrivere i dati in un file CSV che viene scaricato dal cliente.
Sto eseguendo PHP su Linux e di conseguenza le terminazioni di riga non sono interpretate da molte applicazioni Windows.
Potrei scrivere il file CSV in una directory sul server, leggere di nuovo in ed eseguire una str_replace()
\n
-\r\n
, ma questo sembra un modo piuttosto goffo di risolvere il problema. C'è un modo per eseguire la conversione senza creare un file fisico?
A meno che l'utente apre il file in un editor di testo di Windows che richiede CRLF, o alcune vecchie app di Windows, allora non dovrebbe davvero importare ... la maggior parte delle applicazioni Windows in questi giorni riconoscono un semplice LF invece –
Scusa per +1 eri al 1337, il rappresentante più aggraziato . Ma la tua domanda mi interessa, non c'è modo di cambiare anche l'escape char ... –
@MarkBaker: Sì, è quello che mi aspettavo. Sfortunatamente, stanno importando il CSV in un MIS che usano, il che non sembra essere più intelligente del Blocco note a questo riguardo. – Kalessin