Требуется после загрузки XLSX или XLS документа на сервер, сразу конвертировать его в PDF и отдавать клиенту.
Использовал PHPExcel, PhpSpreadsheet, FPDF, но, к сожалению, ничего не вышло.
Сейчас имею код (PHPExcel), который сохраняет исходный файл, после сохранения конвертирует в PDF и отдает клиенту, но полученный файл не удается открыть и его размер подозрительно мал.
Знаю, что подобные темы были, даже что-то находил на сторонних ресурсах, но по итогу сталкивался с многочисленными ошибками, победить которые не удалось, или же работало не лучше, чем сейчас.
$newname = "../../excel/".$_POST['par1']."/".$_POST['par2'].".xlsx";
if((move_uploaded_file($_FILES['uploadfile']['tmp_name'], $newname))) {
$pdf_path = "../../pdf/{$_POST['par1']}/{$_POST['par2']}.pdf";
require_once 'Classes/PHPExcel.php';
$rendererName = PHPExcel_Settings::PDF_RENDERER_TCPDF;
$rendererLibrary = 'tcPDF.php';
$rendererLibraryPath = 'Classes/PHPExcel/Writer/PDF/'. $rendererLibrary;
$inputFileType = PHPExcel_IOFactory::identify($newname);
$objReader = PHPExcel_IOFactory::createReader($inputFileType);
$objPHPExcel = $objReader->load($newname);
$objPHPExcel->setActiveSheetIndex(0);
if(!PHPExcel_Settings::setPdfRenderer($rendererName,$rendererLibraryPath)) {
die('NOTICE: Please set the $rendererName and $rendererLibraryPath values'.'<br>'.'at the top of this script as appropriate for your directory structure');
}
header('Content-Type: application/pdf');
header('Content-Disposition: attachment;filename="converted.pdf"');
header('Cache-Control: max-age=0');
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'PDF');
$objWriter->save('php://output');
exit;
} else {
echo "Error!";
}
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
При запуске получаю ошибку: папка vagrant/config пустаяЯ не могу понять, что я не так делаю? Может быть забыли включить необходимые файлы в проект?