Nel frattempo in cui tu scrivevi ho fatto un test, vedi se ti può tornare utile, a me funziona perfettamente con openoffice:
Codice PHP:
<?php
$records = array();
$record = array();
$record[] = "Test'";
$record[] = "Prova";
$record[] = "Gianiaz";
$records[] = $record;
$record = array();
$record[] = "Test2'";
$record[] = "Prova2";
$record[] = "Thitan";
$records[] = $record;
$delimitatore_testo = "'";
$delimitatore_campo = ";";
$delimitatore_riga = "\n";
$filename = 'test.csv';
$csv = "";
foreach($records as $record) {
$riga = "";
foreach($record as $valore) {
if($riga) {
$riga .= $delimitatore_campo;
}
$riga .= $delimitatore_testo.str_replace($delimitatore_testo, $delimitatore_testo.$delimitatore_testo, $valore).$delimitatore_testo;
}
$riga .= $delimitatore_riga;
$csv .= $riga;
}
$handle = fopen($filename, 'w');
fwrite($handle, $csv);
fclose($handle);
?>