Я использую PhpSpreadsheet для создания файла Excel ( .xls ).
, тогда я понимаю, что mimetype сгенерированного файла был application / vnd.ms-office.
Тестирование двумя способами:
Использование этого для прямой загрузки на сервер dir:
<?php
$spreadsheet = new Spreadsheet();
$sheet = $spreadsheet->getActiveSheet();
$sheet->setCellValue('A1', 'Hello World !');
$writer = new Xls($spreadsheet);
$filename = 'name-of-the-generated-file.xls';
$writer->save(FCPATH . 'extracted/' . $filename);
и использование для загрузки с браузером
<?php
$spreadsheet = new Spreadsheet();
$sheet = $spreadsheet->getActiveSheet();
$sheet->setCellValue('A1', 'Hello World !');
$writer = new Xls($spreadsheet);
header('Content-Type: application/vnd.ms-excel');
header('Content-Disposition: attachment;filename="name-of-the-generated-file.xls"');
header('Cache-Control: max-age=0');
$writer->save('php://output');
Я проверяю сгенерированный файл с помощью
echo mime_content_type('name-of-the-generated-file.xls');
, оба кода генерируют MIME application / vnd.ms-office.
как генерировать электронную таблицу с приложением/vnd.ms-excel вместо приложения / vnd.ms-office?