Ho una piccola funzione, che crea il documento .xls (usando PHPexcel) e poi lo invia a php: // output. Quindi scaricalo dall'utente.
Tutto funziona correttamente, ad eccezione del safari su Mac OS X che aggiunge l'estensione .html per qualche motivo.
Quindi il file risultante è denominato report.xls.html. Il contenuto è ok, ma è fastidioso per gli utenti.Safari aggiungendo .html per scaricare
Come posso risolvere questo?
Ecco parte del mio codice:
$filename = 'report.xls';
header('Content-Description: File Transfer');
header('Content-Type: application/vnd.ms-excel');
header('Content-Disposition: attachment; filename="'.$filename.'"');
header('Content-Transfer-Encoding: binary');
header('Connection: Keep-Alive');
header('Expires: 0');
header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
header('Pragma: public');
$objWriter = new PHPExcel_Writer_Excel5($objPHPExcel);
$objWriter->save('php://output');
Grazie a Dio che questa soluzione funziona, ma posso chiederti perché "exit" risolve il problema? – cytsunny