PHPExcel Записывает нежелательные символы при запуске кода на AWS.

Я столкнулся с проблемой с PHPExcel excel download code.A загружаем код, который работает на одном сервере (netcore server), но тот же набор кода, который не работает на сервере AWS. Может кто-нибудь помочь мне разобраться, что может быть точной проблемой? Ниже приведен код загрузки phpexcel:

error_reporting(E_ALL); ini_set('display_errors', TRUE); ini_set('display_startup_errors', TRUE); date_default_timezone_set('Europe/London'); if (PHP_SAPI == 'cli') die('This example should only be run from a Web Browser'); /** Include PHPExcel */ require_once '../Classes/PHPExcel.php'; // Create new PHPExcel object $objPHPExcel = new PHPExcel(); // Set document properties $objPHPExcel->getProperties()->setCreator("Maarten Balliauw") ->setLastModifiedBy("Maarten Balliauw") ->setTitle("Office 2007 XLSX Test Document") ->setSubject("Office 2007 XLSX Test Document") ->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.") ->setKeywords("office 2007 openxml php") ->setCategory("Test result file"); // Add some data $objPHPExcel->setActiveSheetIndex(0) ->setCellValue('A1', 'Hello') ->setCellValue('B2', 'world!') ->setCellValue('C1', 'Hello') ->setCellValue('D2', 'world!'); // Miscellaneous glyphs, UTF-8 $objPHPExcel->setActiveSheetIndex(0) ->setCellValue('A4', 'Miscellaneous glyphs') ->setCellValue('A5', 'éàèùâêîôûëïüÿäöüç'); // Rename worksheet $objPHPExcel->getActiveSheet()->setTitle('Simple'); // Set active sheet index to the first sheet, so Excel opens this as the first sheet $objPHPExcel->setActiveSheetIndex(0); // Redirect output to a client's web browser (Excel5) header('Content-Type: application/vnd.ms-excel'); header('Content-Disposition: attachment;filename="01simple.xls"'); header('Cache-Control: max-age=0'); // If you're serving to IE 9, then the following may be needed header('Cache-Control: max-age=1'); // If you're serving to IE over SSL, then the following may be needed header ('Expires: Mon, 26 Jul 1997 05:00:00 GMT'); // Date in the past header ('Last-Modified: '.gmdate('D, d MYH:i:s').' GMT'); // always modified header ('Cache-Control: cache, must-revalidate'); // HTTP/1.1 header ('Pragma: public'); // HTTP/1.0 $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); $objWriter->save('php://output'); 

Файл Excel загружается, но с символами нежелательной почты / Un-supported

 PKU~AG D X [Content_Types].xml  MN 0  " %nY   vAa  (0  ؖg w{&i @ nbE {  y  d۸l m     X (   )   F  ;@1_     c)j x/%  E  y   QĿi!  K  

Я столкнулся с этой точной проблемой, выполняя файл xlsx и обнаружил, что это проблема с буфером. Чтобы решить эту проблему, я использовал функцию управления выходом php ob_end_clean (); прямо перед сохранением. Поэтому в вашем случае это будет выглядеть так:

 $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); ob_end_clean(); $objWriter->save('php://output'); 

У меня такая же проблема.

 ob_end_clean(); $objWriter->save('php://output'); 

Это приведет к удалению нежелательных символов из excel.