#php #phpexcel
#php #phpexcel
Вопрос:
Я использую PHPExcel для экспорта данных с моей PHP-страницы в Excel. Я использую Excel5.
Я хочу, чтобы файл Excel был сохранен в определенной папке, указанной в коде
ИЛИ еще лучше,
Я хочу, чтобы Excel открывался с записанными в нем данными, чтобы пользователь мог сохранять их везде, где он хочет. Что мне делать.
Пожалуйста, направьте меня
Предварительно
Ответ №1:
Я решил эту проблему, выполнив это:
$objWriter->save(str_replace(__FILE__,'/path/to/save/filename.extension',__FILE__));
В моем случае это сработало!
Комментарии:
1. При сохранении phpexcel я получаю ошибку ZipArchive::close().
$objWriter->save(str_replace(__FILE__,$excel_path,__FILE__));
Ответ №2:
При этом пользователю будет предложено сохранить / открыть файл:
$excel = new PHPExcel();
header('Content-Type: application/vnd.ms-excel');
header('Content-Disposition: attachment;filename="your_name.xls"');
header('Cache-Control: max-age=0');
// ...
$writer = PHPExcel_IOFactory::createWriter($excel, 'Excel5);
$writer->save('php://output');
Ответ №3:
Посмотрите на 01simple-download-xls.php в каталоге тестов PHPExcel. При этом файл Excel отправляется в браузер пользователя, который затем предлагает ему либо отобразить его (в Excel, если он установлен, или в другой программе для работы с электронными таблицами, если у них есть расширение, связанное с LibreOffice Calc, Gnumeric или любым другим), либо сохранить его на свой локальный диск.
Комментарии:
1. Я получаю ZipArchive::close() при сохранении phpexcel.
$objWriter->save($excel_path);
Ответ №4:
Это решило эту проблему для меня:
$this->objWriter->save(str_replace(__FILE__,$_SERVER['DOCUMENT_ROOT'] .'/path/to/save/filename.xlsx',__FILE__));